Java持久API课堂

Java持久API课堂

ID:40847671

大小:1.75 MB

页数:63页

时间:2019-08-08

Java持久API课堂_第1页
Java持久API课堂_第2页
Java持久API课堂_第3页
Java持久API课堂_第4页
Java持久API课堂_第5页
资源描述:

《Java持久API课堂》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于JavaEE的高级程序设计济南大学信息学院刘鹍liukun@ujn.edu.cn1回顾:EJBJAR、WAR和EAREJB:32+1会话BeanSLSBSFSB会话Bean部署2回顾:EJBJNDI编程:JNDI类设置JNDI访问环境信息Javax.naming.Context(interface)其中INITIAL_CONTEXT_FACTORY和PROVIDER_URL。Javax.naming.Naming(interface)Javax.naming.InitialContext(class)其中lookup()、list()、

2、bind()、createSubcontext()、unbind()Java.util.Propertes(class)其中setProperties()和getProperties()、list()在进行JNDI查找前,我们必须设置应用服务器的上下文信息,主要是设置JNDI驱动的类名(java.naming.factory.initial)和命名服务提供者的URL(java.naming.provider.url)。java.naming.factory.initial或Context.INITIAL_CONTEXT_FACTORY:环境属

3、性名,用于指定InitialContext工厂(作者称它为JNDI驱动更容易理解),它类似于JDBC指定数据库驱动类。因为本例子连接的是JbossNS(命名服务的实现者),所以使用Jboss提供的驱动类:org.jnp.interfaces.NamingContextFactory。java.naming.provider.url或Context.PROVIDER_URL:环境属性名,包含提供命名服务的主机地址和端口号。它类似于JDBC指定数据库的连接URL。连接到JbossNS的URL格式为:jnp://host:port,该URL的“jn

4、p:”部分是指使用的协议,JBoss使用的是基于Socket/RMI的协议。host为主机的地址,port为JNDI服务的端口。除了host之外,其他部分都是可以不写的。3回顾:EJBJNDI编程:编程过程//设置初始化上下文的参数,主要是设置JNDI驱动的类名//Java.naming.factory.initial和提供命名服务的的URL-Java.naming.provider.url,//Java.naming.factory.initial的值因提供JNDI服务器的不同而不同,//Java.naming.provider.url的值

5、包括提供命名服务的主机地址和端口号。Propertiesp=newProperties();p.setProperty("Java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");p.setProperty("Java.naming.provider.url","localhost:1099");//初始化上下文环境,生成一个上下文实例InitialContextjndiContext=newInitialContext(p);ObjectlookupObj

6、ect=jndiContext.lookup(“jndiname”);4回顾:EJB着重说一下JbossEJBJNDI名称默认的命名规则:1)如果EJB打包进后缀为*.ear的JavaEE发布文件,默认的JNDI路径名称是访问本地接口:EAR-FILE-BASE-NAME/EJB-CLASS-NAME/local访问远程接口:EAR-FILE-BASE-NAME/EJB-CLASS-NAME/remote例:EJBHelloEjb打包进名为HelloEjb.ear的JavaEE应用,访问它远程接口的JNDI名是:HelloEjb/HelloE

7、jbBean/remote2)如果EJB应用打包成后缀为*.jar的发布文件,默认的JNDI路径名称是访问本地接口:EJB-CLASS-NAME/local访问远程接口:EJB-CLASS-NAME/remote例:HelloEjb应用打包成HelloEjb.jar文件,访问它远程接口的JNDI名称是:HelloEjbBean/remote另外有一点要注意:EJB-CLASS-NAME是不带包名的,如cn.edu.ujn.test.HelloEjbBean只需取HelloEjbBean。5问题:使用注释改变SessionBean的JNDI名称

8、如果我们没有指定EJB的JNDI名称,当EJB发布到应用服务器时,应用服务器会按默认规则为EJB生成全局JNDI名称。当我们需要自定义JNDI名称时,可以自定义JN

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。