1.JNDI:java命名和目录接口,主要用于在javaEE服务器上存储对象资源,EJB的会话bean、JMS的消息目标地址、JPA的数据源等都可以使用JNDI。
2.JNDI客户端开发步骤:
(1).创建初始化上下文(InitialContext):
两个重要参数:Context.INITIAL_CONTEXT_FACTORY(或者java.naming.factory),
Context.PROVIDER_URL(或者java.naming.provider.url)。
(2).创建上下文和删除上下文:
创建上下文:
也可以使用:
删除上下文:
(3).绑定对象:
被绑定的类必须实现Serializable序列化接口。
有两种绑定对象的方法:
a. Context对象.rebind(“JNDI名”, 绑定对象);
可以重复绑定,或者说更新绑定对象。
b. Context对象.bind(“JNDI名”, 绑定对象);
只能调用一次。
(4).查找对象:
(5).从服务器删除对象:
也叫做unbind,取消绑定。
(6).关闭上下文:
3.3种类别的JNDI:
(1).各应用自带的局部JNDI:
JNDI名字格式:”java:comp/JNDI名”。
(2).服务器提供的服务资源:
JNDI名字格式:”java:JNDI名”。
(3).服务器提供的全局JNDI资源:
JNDI名字前不需要任何前缀或者命名空间。