论坛首页 Java企业应用论坛

EJB3.1 将有哪些新增内容?

浏览 2684 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-03-07  
Java EE6 专家组成员Reza最近在theserverside.com发表了系列文章,征求Java社区对EJB3.1的新增特点的意见。本文粗略介绍一下,先睹为快。

    主要的新增特点有如下内容:

    1、可能推出轻量版的EJB,叫做“EJB Lite”

    只提供资源注射(Resource Injection),Session EJB,事物处理(Transaction Management),安全(Declarative Security)及持久支持(Persistence Management)等关键性技术。这些技术是众多网络应用所需的关键技术,可能将被收纳在JEE 6 Profile中。

    文章提到了Java EE部署的打包问题,ejb层有可能被允许部署到WEB-INF里,从而使部署变得灵活。

    这将为轻量版的EJB容器的标准化奠定基础,文章也提到在Servlet容器中支持EJB的可能性。的确,对于大量的网络应用来说,可能只需要Session Bean及其所享有的服务,而且多数部署在同一个JVM上,不需要分布支持,甚至不需要JMS.“EJB Lite”将有助于EJB进一步重新占领市场。

    2、WebBeans + EJB

    通过新的annotation来实现将任何POJO注入到EJB中。EJB3.0的资源注入仅限于“managed”对象,如ejb,datasource,persistence manager,jms queue等等。新的资源注入将改变这一限制。文中提到新的annotation @Component,@Name,@In.

    3、标准化JNDI绑定名称

    EJB3.1可能标准化JNDI的绑定名称,以实现不同容器间的兼容性。

    4、Singleton Beans

    可能提供Singleton Beans来实现业务层的数据分享。他们是线程安全的(thread safe),并支持事务(transactional)。文章提到annotation @Singleton.

    5、JAX-RS:Java EE api for RESTful web services

    6、进一步简化JMS,JavaMail,DataSource等的注入。

    7、增强EJB Timer的功能:可能会增加类似cron job的功能等。

    8、EJB interfaces might be optional.

    9、EJB3 embeddable container on Java SE

    10、EJB3 & Spring Integration

   发表时间:2009-03-07  
第一条轻量级的EJB最重要了
0 请登录后投票
   发表时间:2009-03-08  
EJB一直在跟着别人在改啊,自己的东西越来越少了
0 请登录后投票
   发表时间:2009-03-08  
知错能改总比顽固不化要好
0 请登录后投票
   发表时间:2009-03-08  
打倒小日本 写道
第一条轻量级的EJB最重要了

是的,现在中小型公司不肯用EJB最大的原因就是不够轻量级
0 请登录后投票
   发表时间:2009-03-08  
caipanjin 写道
EJB一直在跟着别人在改啊,自己的东西越来越少了

它原来的那些分布式应用,事务,web service上优势可没有丢啊
0 请登录后投票
   发表时间:2009-04-26  
3.1 会增加并发机制,虽然增加了编程的灵活性,但我想以后的麻烦会更多。。。特别国内都是一些半调子拿技术指挥棒,结果不堪设想。
Singleton有必要吗?虽然它是spring的命根,但在ejb中有些多余。EJB 容器有自己的对象池管理机制。
这两个特性都是将原来的容器管理的能力外部化了。
0 请登录后投票
   发表时间:2009-04-26  
最有用的改进,我认为是jndi的统一,ejb程序终于可以在不同的应用服务器之间移植了。
0 请登录后投票
   发表时间:2009-04-26  
webbeans现在应该叫 java context and dependency injection ,功能已经大大缩水。
和bean validation 标准一样,而且这个标准没有纳入 Java EE 6 正式考虑范围,只是作为候选标准,这次也可能泡汤。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics