什么是EJB?1. Enterprice JavaBeans(EJB)是一个用于分布式业务应用的标准服务端组件模型。 2. 采用EJB架构编写的应用是可伸的、事务性的、多用户安全的。 3. 采用EJB编写的应用可以部署在jboss、weblogic等服务器上(Tomcat只是web容器,不包含EJB容器) 4. EJB用于编写MVC的业务层(Model)代码 5. EJB提供了很多在企业开发中需要使用到的服务,如事务管理、安全、持久化、分布式等。因为这些服务由容器提供,无需我们自己开发。 6. EJB和Spring的区别,EJB用于做分布式系统。如果项目不需要分布式部署,Spring是较好的选择
将公共的业务部署到一台服务器上。这样不同的服务都可以访问相同的业务,实现组件级别的最大重用
介绍一下常用的注解: * javax.ejb.Stateless * 指明此类是一个无状态的会话bean * 使用实例池技术管理bean * * @Stateless(name="abc") * 指明这个类的 jndi名字为abc * 不指明默认为这个类的简单名称 * **************************** * * javax.ejb.Stateful * 指明此类是一个有状态bean * 为每一个用户保存其信息 * 使用激活管理bean * 会话信息从内存保存到磁盘为钝化(序列化) * 从磁盘还原到内存为激活(反序列化) * 如果过期了,会自动清除掉磁盘上的信息 * *************************** * * javax.ejb.Remote * 指明是一个远程接口 * 不写默认是本地接口(Local) ********************************* * * javax.ejb.Local * * 本地接口 * ***************************** * * 当EJB和客户端同时运行在一台jvm内,优先使用本地接口 * * javax.ejb.EJB * 自动注入其他的EJB属性,和Spring的org.springframework.beans.factory.annotation.Autowired类似 ********************************** *@Resource(mappedName="java:jndi的名字") DataSource da; *注入其他资源 * *
时间: 2024-10-13 04:17:53