EJB 3.0的雛形基本已經出來了,下面是我個人對EJB 3.0產生的一些變化的少許總結:
EJB 3.0總體目標是易于開發.EJB 3.0最主要有以下幾個特點:
首先易于開發使用,目前的EJB對于程序員來說是重量的,因為程序員建立一個EJB需要很多步驟:建立幾個接口文件和一個配置文件.
在EJB3.0中,建立一個Session bean將會非常簡單,如:
@Session
public class HelloWorldBean {
public void Hello (String s) {
System.out.println(“Hello:”+s)
}
}
其次,引入Dependency Injection 模式(一種新的Ioc模式,也是AOP基礎模式)替代了JNDI的LookUp,這樣使得在EJB容器外測試程序變得更加容易。
最后是簡化了持久層實體Bean CMP,現在EJB中的實體Bean CMP因為重量且復雜被很多程序員指責甚至攻擊,因此,開源項目Hibernate成為很多程序員的新寵兒,EJB 3.0吸取了Hibernate和TopLink輕量特點,簡化了CMP,從而使得EJB 3.0的CMP足以在持久層技術和Hibernate之類ORM產品形成了競爭。
Rod Johnson 的J2EE without EJB 是反對EJB的,正是他發明了spring,而現在tomcat+spring+hibernate已經成為許多J2EE開發人員的主要選擇.所以使得EJB委員會才會痛下決心,進行改革.
EJB3.0 final版差不多發布了,文檔也看得差不多.雖然是英文的,看得也不是很辛苦.但在看完后卻覺得心里空空的感覺,也許是自己的積淀不夠深厚的緣故吧.
想起以前給別人講課的經歷,當你試圖讓別人明白一件東西的時候,你自己也是對這件東西的一次重新認識,于是我決定用自己的語言來把這些文檔翻譯成中文,寫在我的blog里,希望一切順利.