基于J2EE规范的中间件——EJB开发实例2
生活随笔
收集整理的這篇文章主要介紹了
基于J2EE规范的中间件——EJB开发实例2
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前言
??? 上篇講解了EJB開發的簡單實例,我們對EJB也有了簡單的認識,下面咱們對EJB進行繼續的深入學習。
?
正題
?? 今天講解的實例就是有狀態和無狀態的Ejb,所需的步驟跟上一篇講解的一樣,一個服務端項目,一個客戶端項目.
?? 1.服務端(EJB項目):
????? 接口類:
???? StatefulEjb.java:
package com.tgb.ejb;public interface StatefulEjb {public void compute(int i);public int getResult(); }
?
???? StatelessEjb.java:
package com.tgb.ejb;public interface StatelessEjb {public void compute(int i);public int getResult(); }
?
????? 實現類:
??? StatefulEjbBean.java:
package com.tgb.ejb;import javax.ejb.Remote; import javax.ejb.Stateful;@Stateful @Remote public class StatefulEjbBean implements StatefulEjb {private int state;@Overridepublic void compute(int i) {state = state + i;}@Overridepublic int getResult() {return state;} }
?
??? StatelessEjbBean.java:
package com.tgb.ejb;import javax.ejb.Remote; import javax.ejb.Stateless;@Stateless @Remote public class StatelessEjbBean implements StatelessEjb {private int state;@Overridepublic void compute(int i) {state = state + i;}@Overridepublic int getResult() {return state;} }
?? 2.客戶端:
????? 引入jar包:
???? 引入接口StatefulEjb和StatelessEjbjar包還有jboss的client包,還有配置jndi配置文件。
?
?? 編寫main方法:
?????StatefulEjbClient的main方法:
??
package com.tgb.ejb;import javax.naming.InitialContext;public class StatefulEjbClient {public static void main(String[] args) throws Exception{InitialContext context = new InitialContext();//第一次會話StatefulEjb ejb1 = (StatefulEjb)context.lookup("StatefulEjbBean/remote");System.out.println(ejb1.getResult());ejb1.compute(1);System.out.println(ejb1.getResult());ejb1.compute(1);System.out.println(ejb1.getResult());ejb1.compute(1);System.out.println(ejb1.getResult());//第二次會話StatefulEjb ejb2 = (StatefulEjb)context.lookup("StatefulEjbBean/remote");System.out.println(ejb2.getResult());ejb2.compute(1);System.out.println(ejb2.getResult());ejb2.compute(1);System.out.println(ejb2.getResult());ejb2.compute(1);System.out.println(ejb2.getResult());} }???? 執行結果:0 1 2 3 0 1 2 3
???? StatelessEjbClient的main方法:
????? 執行結果:0 1 2 3 4 5 6 7
?
??? 通過觀察兩個客戶端的執行結果我們就可以知道有狀態和無狀態的區別,有狀態Bean可以保持記錄每一個Bean的狀態,而無狀態Bean則不能。
?
???
?
總結
以上是生活随笔為你收集整理的基于J2EE规范的中间件——EJB开发实例2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: flash打造佛光效果实例教程
- 下一篇: 37.伪造参数错误的ICMP数据包