针对现在的项目学习EJB,基本当学习笔记用了,可能不会刻意去组织言语,词语不清请谅解。
一个EJB至少包括3个java文件:
remote接口 extends EJBObject 客户程序可以调用的业务方法。
--为了消弱客户程序与模型的关系,可能还会有个业务接口
home接口 extends EJBHome 定义了创建,查找和删除EJB的方法。
enterprise Bean类 implements SessionBean 实现remote接口中定义的业务方法。
发布EJB组件,一个EJB组件由相关的类文件和EJB的fabu描述文件构成,它的目录结构如下图所示(它是发布到jboss上)。
EJB组件
| |
相关的类文件和jar文件 META-INF目录
| |
ejb-jar.xml jboss.xml
ejb-jar.xml是EJB组件的发布描述文件,它定义了EJB组件的类型,并指定了它的remote接口,home接口和enterprise bean类对应的类文件。
jboss.xml是当EJB组件发布到JBoss服务器中时才必须提供的发布描述文件,在这个文件中为EJB组件指定JNDI名字。
部署web应用
修改web.xml文件 声明对EJB的引用,包括类型,home接口,remoto接口
创建jboss-web.xml文件 指定EJB名和JNDI名的映射关系
把程序打包成war文件,就能发布web应用了。
部署J2EE应用
目录结构
J2EE应用
EJB组件(*.jar) Web应用(*.war) META-INF
application.xml
application.xml
<application>
<display-name/>
<module>
<web>
<web-uri>*.war<web-uri>
<context-root>/index</context-root>
</web>
<module>
<ejb>*.jar</ejb>
</module>
</module>
</application>
把J2EE打包成*.ear文件,发布到JBoss上。
EAR是企业应用包
war是web应用包
war是web应用包