首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

EJB 3.0 無狀態 Session Bean 開發完整範例:計數器服務

     編輯:Java 相關知識

開發模型簡化

  • 無需 Home/Remote/Local 介面,單一 POJO + 註解即可
  • 業務介面標註 @Remote 或 @Local
  • Bean 類別標註 @Stateless
  • JBoss 自動以介面全名為 JNDI Name

計數器介面與實作


@Remote
public interface Counter {
    int add(int i);
    int getNumber();
}

@Stateless
public class CounterBean implements Counter {
    private int number = 0;
    public int add(int i) { return number += i; }
    public int getNumber() { return number; }
}

Client 測試程式


InitialContext ctx = new InitialContext();
Counter counter = (Counter) ctx.lookup(Counter.class.getName());
counter.add(10);
System.out.println(counter.getNumber()); // 10
Counter counter2 = (Counter) ctx.lookup(Counter.class.getName());
counter2.add(10);
System.out.println(counter2.getNumber()); // 20,同一 Bean 實例池共享狀態

Ant 建構腳本要點

  • classpath 包含 JBoss lib、server/all/lib、ejb3.deployer、jboss-aop.deployer
  • 打包為 .ejb3 檔案複製至 server/all/deploy
  • 提供 clean.db 目標清理 Hypersonic 資料

部署驗證

  1. JBoss run.bat -c all
  2. Ant ejbjar → run
  3. 觀察主控台輸出 10、20 驗證無狀態 Bean 池共享特性
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved