刚刚对EJB的流程有了一点了解,现在总结出来,请大家多多指教:
1、创建自己的Bean(现在我只学习了一个会话Bean的例子),其中包含商务方法的实现;
(2--5的操作可由容器自动完成,如WebLogic中的Build EJB,如果在MyEclipse中,可以在生成Bean的时候选择是用XDoclet自动生成以下接口)
2、创建远程接口(继承自EJBObject),其中包括商务方法的空实现(必须抛出远程异常),客户端通过该接口与EJB对象交互,
它的具体实现由EJB容器供应商实现,实现的对象就是EJB对象,它拥有对实际Bean的引用;
3、创建Home接口(继承自EJBHome),其中至少包含一个create()方法,这个方法返回EJB对象,并抛出远程异常,
它的作用相当于EJB对象的生成库;
(4和5是可选的操作,本地用户可以通过这些接口而不是远程接口来调用Bean)
4、创建本地接口(继承自EJBLocalObject),方法跟远程接口中的相当,只是不需要抛出远程异常;
5、创建本地Home接口(继承自EJBLocalHome),方法跟Home接口相当,同样不需要抛出远程异常;
6、如果采用自动生成接口的话,同时会在META-INF生成下生成多个XML配置文件:
ejb-jar.xml:它是EJB规范中要求的配置,是容器无关的。下面是一个实际配置的例子
<ejb-jar>
<enterprise-beans>
<!-配置会话Bean
->
<session>
<ejb-name>HelloBean</ejb-name>
<home>bean.HelloHome</home>
<remote>bean.HelloObject</remote>
<ejb-class>bean.HelloBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
<entity>
<!-配置实体Bean
->
</entity>
</enterprise-beans>
</ejb-jar>
还有一个与特定容器相关的配置文件:
如WebLogic中配置文件为weblogic-ejb-jar.xml,下面是一个实际配置的例子:
<weblogic-ejb-jar>
<weblogic-enterprise-bean>
<ejb-name>HelloBean</ejb-name>
<stateless-session-descriptor>
</stateless-session-descriptor>
<jndi-name>ejb.helloJNDI</jndi-name>
</weblogic-enterprise-bean>
<weblogic-ejb-jar>
在Jboss则会有相应的配置文件。
7、现在我们看到我们的Bean、Home接口、EJBObject接口已经与特定的命名绑定;
8、现在客户端要调用Bean中的某个商务方法:
- 通过JNDI查找到Home对象,获得它的引用;
- Home对象是EJB对象的生成库,由它创建生成新的EJB对象;
- 客户端调用EJB对象的商务方法;
- EJB对象将请求委托给实际的Bean;
- Bean实现商务方法。
上面这些是我这两天学习所得,知之皮毛,我会在不断学习中不断更新,殷切希望大家指导!
分享到:
- 2006-12-13 17:36
- 浏览 3165
- 评论(2)
- 论坛回复 / 浏览 (2 / 5974)
- 查看更多
相关推荐
在软件开发中,Java的面向服务架构(SOA)和企业级JavaBean(EJB)框架为构建大型分布式系统提供了强大支持。通过Java的网络编程能力,我们可以创建能够跨越多个网络节点的应用,这在云计算和大数据处理中尤其重要。...
### Oracle WebLogic Server 12c:初探与深度解析 #### 核心知识点概览 Oracle WebLogic Server 12c是Oracle公司推出的一款功能强大的应用服务器,它旨在为现代企业级应用提供一个高性能、高可靠性的运行环境。本...
7.2 集成EJB 3.1 7.3 线程池及任务调度集成支持 7.4 集成JMS 7.5 集成JavaMail 7.6 集成分布式操作 7.7 集成JMX 7.8 集成Java EE连接器架构 7.9 小结 8 Web层集成支持 8.1 Spring Web MVC框架 8.2 Spring ...
python教程学习
tdac034.pdf
veclibm111111111111
nssm工具,进行2次解压后即可
视讯镜头优化,操作不走
【数据结构】的资源,包括书籍、在线课程和网站
北京大学-DeepSeek系列-提示词工程和落地场景.pdf.png
【财信国际经济研究院-2025研报】2025年2月CPI和PPI数据点评:通胀低于预期,内需亟待提振.pdf
【毕业设计】java-springboot+vue精品在线试题库系统源码(完整前后端+mysql+说明文档+LunW).zip
python安装-25.求 a 的 b 次方——有点不好意思哈.py
代码实现了自适应IMM(交互式多模型)算法,专注于对目标状态进行估计,并结合了匀速(CV)和匀加速(CA)运动模型。它使用自适应观测噪声估计和扩展卡尔曼滤波器(EKF)作为滤波主体,并在最后提供误差统计特性输出。
中产品工业物联网联网的基础功能,是企业开启数字化转型的入门之选。它能帮助企业快速搭建起基础的设备数据采集与监控体系,以较低成本实
北京大学DeepSeek系列-DeepSeek与AIGC应用.pdf.png
【毕业设计-java】springboot-vue基于多维分类的知识管理系统实现源码(完整前后端+mysql+说明文档+LunW).zip
## 一、数据介绍 本数据参考C刊《管理评论》佟岩(2024)老师的做法,使用各年度省级政府工作报告中“减碳”关键词的词频总数来测度地方政府对“减碳”的重视程度,“减碳”关键词包括二氧化碳、低碳、减排、节能、能耗、环境保护(环保)、生态、绿色。 本数据包含:原始数据、参考文献、代码do文件、最终结果。 ## 二、参考文献: 佟岩,李鑫,徐国铨.企业集团碳减排压力与债务分布-来自高耗能上市公司的经验证据[J].管理评论,2024,36(02):210-221.DOI:10.14120/j.cnki.cn11-5057/f.2024.02.014 ## 三、相关数据:城市、城市编码、年份、减碳重视程度词频。
python教程学习