由于真正業務核心在POJO中實現,因此,只要改一下applicationContext.xml配置,這樣,調試時,前臺就可以直接調用POJO,不必通過EJB,調試起來方便了,這有一個前提:他們認為調試EJB復雜,其實不然,在JBuilder中,結合Junit,測試EJB如同測試POJO一樣方便,這是其他分支,不在此討論。當部署使用時,再改一下applicationContext.xml配置,指引前臺調用到EJB。
似乎很巧妙,這里有兩個疑問,首先,指引到EJB的改變是什么時候做?持續集成前還是后,在前在后都有問題,這里不仔細分析。
這種表面巧妙的優點帶來最大的問題是:粗粒度事務機制。所謂粗粒度事務機制,最早見于Petstore的WEB調用EJB Command模式,在這個帖子中有討論。
下面以代碼描述什么是粗粒度事務機制:
ejb方法:
public void updateUser(){
service.updateUser();
}
service是一個POJO,具體方法可能是更新兩個表:
public void updateUser(){
updateTabel1();//更新table1
updateTable2(); //更新table2
}
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/