JBuilder2005+JBoss-4.0.2RC1+J2SDK1.5+Log4j 開發Session Bean例解(3)

來源:互聯網
上載者:User
session
作者:Junsan Jin

日期:2005-3-30

版本:1.0

信箱:junsan21@126.com ; junnef21@sohu.com

聲明:本人保留本文的所有權利。










第三部分:開發Session Bean 


建立EJB模組:











選擇菜單:New〉Enterprise〉EJB〉EJB Designer,彈出對話方塊中選擇New,選擇Create empty EJB Module,點擊next,填入名稱Trader,一路OK即可。 



設計EJB:











1、建立session bean:在開啟的EJB Designer視窗(現在JBuilder的右邊視窗)中右鍵菜單〉create EJB〉Session Bean。











2、修改bean基本性質:Name修改為UserInfo,interface為local,Session Type為Stateful,其他預設。











3、增加屬性:右鍵點擊bean設計圖〉add〉field,分別添加userName類型String,userAge類型String,loginTime類型Sting。











4、增加方法:右鍵點擊bean設計圖〉add〉methed,添加方法showUserInfo,傳回型別為HashMap,interface為local。











5、增加ejbCreate方法:右鍵點擊bean設計圖〉add〉ejbCreate,輸入參數為:String userName, String userAge, String loginTime,home interfaces 為 local home。











6、查看bean的代碼:右鍵點擊bean設計圖〉view bean source可以查看代碼。 



最終代碼為:











-----------------------------------------------











UserInfoBean.java實作類別:











----------------------------------------------











package trader; 



import javax.ejb.SessionBean;











import javax.ejb.SessionContext;











import javax.ejb.CreateException;











import java.util.HashMap;











import org.apache.log4j.Logger; 



public class UserInfoBean implements SessionBean {











    private final static Logger _logger = Logger.getLogger(UserInfoBean.class);











    public UserInfoBean() {











        try {











            jbInit();











        } catch (Exception ex) {











            ex.printStackTrace();











        }











    } 



    SessionContext sessionContext;











    String userName;











    String userAge;











    String loginTime; 



    public void ejbCreate(String userName, String userAge,











                          String loginTime) throws CreateException {











        _logger.debug("Session Bean is Created.");











        this.userName = userName;











        this.userAge = userAge;











        this.loginTime = loginTime;











    } 



    public void ejbCreate() throws CreateException {











    } 



    public void ejbRemove() {











    } 



    public void ejbActivate() {











    } 



    public void ejbPassivate() {











    } 



    public void setSessionContext(SessionContext sessionContext) {











        this.sessionContext = sessionContext;











    } 



    public HashMap showUserInfo() {











        HashMap userInfo = new HashMap();











        userInfo.put("userName", this.userName);











        userInfo.put("userAge", this.userAge);











        userInfo.put("loginTime", this.loginTime);











        return userInfo;











    } 



    private void jbInit() throws Exception {











    }











}











----------------------------------------------------











UserInfoLocal.java本地遠程介面類:











---------------------------------------------------











package trader; 



import javax.ejb.EJBLocalObject;











import java.util.HashMap; 



public interface UserInfoLocal extends EJBLocalObject {











    public HashMap showUserInfo();











}











-----------------------------------------------------











UserInfoLocalHome.java本地本地介面類











-----------------------------------------------------











package trader; 



import javax.ejb.EJBLocalHome;











import javax.ejb.CreateException; 



public interface UserInfoLocalHome extends EJBLocalHome {











    public UserInfoLocal create() throws CreateException; 



    public UserInfoLocal create(String userName, String userAge,











                                String loginTime) throws CreateException;















OK,現在我們的EJB已經可以運行了,下一部分我們將測試這個Session Bean。(未完待續)












相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。