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