<b>实战角度比较EJB2和EJB3的异同</b>[Java编程]
本文“<b>实战角度比较EJB2和EJB3的异同</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
本文从实战角度对比EJB2和EJB3的异同,通过深化解析揭露EJB3.0的本相,EJB3.0真是带来简化?还是一种表象上的简化?EJB3.0真的变得轻量了,还是披着羊皮的狼?
EJB编程模子的简化
首先,EJB3简化的一个主要表现是:在EJB3中,一个EJB不再象EJB2中需求两个接口一个Bean实现类,固然我们从前利用JBuilder这样可视化开辟工具自动生成了EJB2的这三个类,仿佛不认为复杂,但是当EJB个数增添时,就显得负担了.
简化后的EJB3的sessionBean依靠annotations元注释来定义SessionBean的范例,也就是说,EJB2中的SessionBean范例辨别在EJB3持续担当,只不过书写代码的方法差别罢了,比方下代码利用@Stateless表示一个无状况Bean.
package example;
@Stateless
public class TestSessionBean implements TestSessionLocal{
public void xxxx(){
System.out.println("hello");
}
}
上述Session Bean中没有了EJB2中ejbCreate等多余办法,这样TestSessionBean很象一个普通JavaBeans了.是不是简单?先别急,我们需求接着看看这个TestSessionBean是若何调用?
在EJB2中,一个EJB对象的调用需求经过两个步骤:JNDI探求和工厂成立,以下例:
Context ctx = new InitialContext();
TestSessionLocalHome home = (TestSessionLocalHome)ctx.lookup("java:comp/env/ejb/TestSession");
TestSessionLocal bean = home.create();
bean.xxxx();//真正目的 对象利用
其实上述代码最后一句才是我们真正目的,但是为了这个目的,必须经过前面冗长的代码成立,而在EJB3中,为成立型情势的Ioc情势(或称依靠注射)代替了home.create这样简单工厂成立情势,以一种越发松耦合和简便的方法办理了对象成立问题,可以让我们精神更集合在对象的利用上了.
以上是“<b>实战角度比较EJB2和EJB3的异同</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |