session Bean被用于這實現(xiàn)含有特定商業(yè)邏輯的商業(yè)對象,不能直接表現(xiàn)DB中的共享資料,Session對象的狀態(tài)是非持久的存儲的,不不需寫到DB中。Session Bean實現(xiàn)Bean的商業(yè)邏輯,而遠程訪問安全并行和事務(wù)等恥Bean容器提供
二,編寫EJB的規(guī)則:
(1)編寫EnterPRise Bean:
1.可能有一個或多個ejbCreate方法。
2.訪問控制修飾符必須為public ,不能為static
3.參數(shù)是javaRMI的合法類型,且修飾符不能為static 或void.
4.throws 子句可包括CreateException和應(yīng)用程序的其他異常。
5.方法不能與EJB結(jié)構(gòu)定義的相沖突。
(2)Home接口:定義客戶機可調(diào)用的Create上便客戶機實例化所需的對象EJB。
1.Create方法的參數(shù)和返回類型必是RMI類型。
2.Create方法返回Remote接口類型(但ejbCreate方法返回void).
3.Create方法的throw子句必包括remoteException,CreateException.
(3) Remote接口:定義客戶機可以調(diào)用的商業(yè)方法。
1.遠程接口中的方法必與Enterprisre Bean類中的實現(xiàn)的方法匹配。
2.Remote接口中的方法必與Enterprise Bean類中的實現(xiàn)方法相同。
3.參數(shù)和返回類型必是有效的RMI類型。
4.throws子句必包括java.rmi.remoteException.
二,在statful和stateless Session Bean中做選擇。
1.stateul被設(shè)計用來維護代表客戶機狀態(tài),表現(xiàn)非持久存儲的對象。表現(xiàn)商業(yè)對象間的工作流。
一般用于以下例情況:
(1).維護特定的存儲商業(yè)對象。
(2)表現(xiàn)非持久存儲的對象。
(3)表現(xiàn)商業(yè)對象間的工作流。
2 stateless被設(shè)計用來提供服務(wù)器端的行為,不含特定用戶資料。一般用于下例情況:
(1) 建模可重用的服務(wù)對象。
(2) 提供高性能
(3) 一次操作多條記錄。
(4) 提供DATE程序觀點。
新聞熱點
疑難解答