EJB 3.0 概述,对比spring

EJB--Enterprise Java Bean.是sun的服务器端组件模型,设计目标与核心应用是部署分布式应用程序。这也是Spring和EJB最大的区别.而在EJB3.1中也开始像spring一样可以进行非分布式的轻量级应用.

EJB一直都是Java的一个规范.EJB3.0之前的EJB用的很麻烦,学起来也费事.3.0大改革后,开发EJB变得非常的简单.

EJB作为JavaEE的核心规范,不仅是一种优秀的组件技术,还是JavaEE其他规范如RMI,JNDI,JMS等的具体应用.

EJB3.0中不再推荐使用XML文件作为部署描述文件,而是改为使用注解的方式设置描述信息.而注解在Struts2,Spring,Hibernate,JPA.JSF中也开始大量运用,简化了XML的配置量,我觉得是JAVA现在很好的一面.

总的来说,我个人觉得一般软件使用spring是足够的.但是一些特殊情况,使用EJB更好.

1.应用规模大,而且增长速度快.这样情况下,分布式是非常重要的,EJB是不二的选择.

2.应用的伸缩性要求很高.可伸缩性被定义为系统通过增加或减少服务器而提升或者降低系统性能的难易程度以及方便的增加功能和减少功能.EJB.因为对于EJB来说,他提供了良好的组件封装,EJB容器负责处理如事务,访问控制等系统级问题.EJB开发者集中精力去实现业务逻辑.而页面开发者只需要调用方法.

3.应用可能会使用除JSP页面外的其他客户端.

目前就EJB3来说,他有三类Bean,其实就是两类.

1.会话Bean(Session Bean)

2.消息驱动Bean (MDB)

3.可以算也可以不算了,JavaEE5开始使用 JPA规范作为持久层的解决方案,实体Bean被Java持久化API--JPA所替代了.

你可能感兴趣的:(EJB 3.0 概述,对比spring)