昨天晚上回去沒有開電腦,翻了翻大學時候買的書《精通EJB3.0》。很久買了這本書,但是一直都沒有看,對于EJB的很多概念依然是空白。最近在自己寫的一些代碼中涉及到了事物和多線程,特別是在熟悉JTA的時候,了解事物管理器的概念。認識到JTA的事物管理機制和JDBC的事物管理機制是有很大的區別的,雖然他們都暴露了類似的begin和commit以及rollback接口。
對于事物這塊,以前在使用spring和hibernate開發的時候,都是采用了AOP的聲明式事物管理,并且都是JDBC方式的事物管理。另外還沒有涉及到JMS這些組件,也沒有涉及到管理多個數據源的事物情況。
上面說的所有的東西,EJB,Spring和Hibernate,他們和分布式系統到底是一個什么樣的關系?什么樣的系統才是分布式系統?一談EJB保證是一大堆的名詞術語,但是真正拋開這個概念后,EJB可以給我們帶來什么樣的好處?疑惑不解。