全部博文(167)
分类: 系统运维
2010-08-02 12:32:13
jndi
Java 命名与目录接口(Java Naming and Directory Interface),是Java平台的一个标准扩展,提供了一组接口、类和关于命名空间的概念。 JDNI通过绑定的概念将对象和名称联系起来。在一个文件系统中,文件名被绑定给文件。JNDI中的一组绑定作为上下文来引用。每个上下文暴露的一组操作是一致的。例如,每个上下文提供了一个查找操作,返回指定名字的相应对象。
JNDI的用途:
1)你可以用jndi来得到object类的属性
如:Attribute attr =directory.getAttributes(personName).get("email");
String email = (String)attr.get();
2)你可以用jndi来搜索对象
如:foxes = directory.search("o=Wiz,c=US", "sn=Fox", controls);
查找谁的名字叫Fox在wiz部门的员工?
具体到公司中某些应用的例子:
在程序中,如果想要获取这个数据库连接,就可以通过jndi-name来获取相应的对象实例:
DataSource _pool;
Context env = (Context) new InitialContext().lookup("java:comp/env");
_pool = (DataSource) env.lookup("jdbc/Source");
通过上面简单的代码就能获取到数据库对象与数据库通信。(上面只是简单的代码没有任何健壮性)
可以简单这样总结:java的代码存活在resin这个容器中,同时在这个resin的容器中存活了很多资源,而jndi就是这样资源的标识,使程序更容易使用资源。
Jndi可以应用的场景很多,例如:LDAP、CORBA Common Object Service(COS)名字服务、RMI、NDS、DNS、Windows注册表、spring等等。 这里介绍的是最普通和常见。
Servlet
Servlet是Java技术对CGI编程的回答。Servlet程序在服务器端运行,动态地生成Web页面。 位于JSP页面的下一层,就是说jsp页面会先演变成servlet再变成字节码,最后才会被系统认识。 对于系统工程师只需要了解servlet的配置文件就行了。
Servlet不像普通的文件不能具体url就能访问到,要通过web.xml 文件配置其访问路径,才能正确访问,这是因为一个servlet文件就是一个java字节码文件(.class文件)。所以平时如果发现访问一个url出现500或404页面的时候,要定位是哪个部分出错了,这时候可以去查看应用目录下面WEN-INF/web.xml文件。
文件的基本单元如下(某应用例子):
从配置文件里面我们可以看到