Stateful Session Beans

Slides:



Advertisements
Similar presentations
オブジェクト指向 言語 論 第八回 知能情報学部 新田直也. 多相性(最も単純な例) class A { void m() { System.out.println( “ this is class A ” ); } } class A1 extends A { void m() { System.out.println(
Advertisements

S2.4 & S2EJB3Unit 中村( taedium ). Seasar 2.4 の特徴 1 Sesar 2.4 は EJB 3.0 を実 装しています。 EJB 3.0 の仕様は 5 月 12 日に Final Release されたばかりの新しい技 術です。
Web サービス II ( 第 13 回 )‏ 2008 年 1 月 9 日 植田龍男. 本日の目的 Web サービスの歴史と将来の展望 (1) WSDL 2.0 の登場 ‏ Jersey プロジェクト Ver 0.5 による開発.
WebサービスII (第12回)‏ 2007年12月19日 植田龍男.
Apache Camel Data Format Component Apache Camel
2006年11月22日 植田龍男 Webサービス II (第9回) 年11月22日 植田龍男.
Relation Mapping EJB 3.0 コース 第9回 2006年8月6日.
~手続き指向からオブジェクト指向へ(Ⅰ)~
プログラミング基礎I(再) 山元進.
Apache Camel Data Format Component Apache Camel
WebサービスII (第10回) 2007年11月28日 植田龍男.
Javaのための暗黙的に型定義される構造体
エンタープライズアプリケーション II 第10回 / 2006年7月23日
Iアプリプログラミング その1  鳥居秀徳.
アルゴリズムとプログラミング (Algorithms and Programming)
WSDL と JAX-RPC 年10月13日 Webサービス II (第3回) WSDL と JAX-RPC 年10月13日.
プログラミング基礎I(再) 山元進.
Javaのインタフェース についての補足 2006年5月17日 海谷 治彦.
JAVA.
第2回:Javaの変数と型の宣言 プログラミングII 2007年10月2日.
計算機プログラミングI 第12回 2003年1月23日(木) インターフェース スレッド 最後に お知らせ クイズ 授業アンケート
WebサービスII (第8回) 2007年11月14日 植田龍男.
JavaBeans とJSP データベース論 第5回.
JSFによるWebアプリケーション開発 第6回
WSDL と JAX-RPC 年10月20日 Webサービス II (第4回) WSDL と JAX-RPC 年10月20日.
インタフェース プログラミング 第14回 インタフェース プログラミング第14回.
アプレット プログラミング 第10回 アプレット プログラミング第10回.
RMI ソフトウェア特論 第6回 /
Webサービスを使った クライアント・プログラム
第12回 2007年7月13日 応用Java (Java/XML).
オブジェクト指向 プログラミング 第十四回 知能情報学部 新田直也.
変数のスコープ クラス クラス変数 すべてのメソッドの外側でstaticで定義
Webサービス II(第3回) 2007年10月10日.
オブジェクト指向 プログラミング 第八回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第十一回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第十三回 知能情報学部 新田直也.
暗黙的に型付けされる構造体の Java言語への導入
WebサービスII (第7回) 2007年11月7日 植田龍男.
第6回 2007年6月1日 応用Java (Java/XML).
オブジェクト指向 プログラミング 第十四回 知能情報学部 新田直也.
暗号技術 ~JAVAプログラム①~ (5週目)
Collection, Generics, Iterator
プログラミング演習3 第2回 GUIの復習.
10-1 SAXの概要 10-2 Saxプログラミングの基礎 10-3 saxのプログラム例
Jakarta Struts (2) ソフトウェア特論 第11回.
Java8について 2014/03/07.
2006年11月8日 植田龍男 Webサービス II (第7回) 年11月8日 植田龍男.
オブジェクト指向言語論 第八回 知能情報学部 新田直也.
ソフトウェア制作論 平成30年11月21日.
オブジェクト指向 プログラミング 第十ニ回 知能情報学部 新田直也.
アルゴリズムとプログラミング (Algorithms and Programming)
オブジェクト指向 プログラミング 第九回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第八回 知能情報学部 新田直也.
EntityManager と EJB QL EJB 3.0 コース 第8回 2006年8月5日.
ソフトウェア工学 知能情報学部 新田直也.
オブジェクト指向言語論 第十二回 知能情報学部 新田直也.
C#プログラミング実習 第3回.
Javaによる Webアプリケーション入門 第4回
コレクション・フレームワーク J2EE I (データベース論) 第6回 /
コレクション・フレームワーク データベース論 第7回.
Annotation EJB 3.0 コース 第3回 2006年8月4日.
サブゼミ第7回 実装編① オブジェクト型とキャスト.
WebアプリケーションとTomcat ― これまでの復習とこれからの予習 ―
稚内北星学園大学 情報メディア学部 安藤 友晴
JAVA入門⑥ クラスとインスタンス.
ソフトウェア工学 知能情報学部 新田直也.
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
2006年10月18日 植田龍男 Webサービス II (第4回) 年10月18日 植田龍男.
計算機プログラミングI 第2回 2002年10月17日(木) 履習登録 複習 ライブラリの利用 (2.6-7) 式・値・代入 (2.6-8)
プログラミング 2 静的変数.
Presentation transcript:

Stateful Session Beans EJB 3.0 コース 第4回

ここでの目標 “Oracle Application Server EJB 3.0 Preview” の概要を理解する。 Stateless Session Bean の概要を理解する。

Stateful Session Beans

Session Beans (1) クライアントが必要に応じて呼び出す処理をまとめたもの クライアントの特定のセッションに対応 セッション開始と同時に生成され、セッション終了時に消滅

Session Beans (2) Stateless Session Beans Stateful Session Beans インスタンスに固有のフィールドがないため内部状態を持たず、ユーティリティクラスのように振る舞う Stateful Session Beans 内部状態を持っている

サンプルアプリケーション (1) %ORACLE_HOME%¥demo¥howtoejb30sfsb について解説する Cart サンプルアプリケーション Ant でコンパイル、J2EEサーバへの配備 (デプロイ) を実行

サンプルアプリケーション (2) J2EEサーバ側 (EJB) クライアント側 そのほか、いくつかの設定ファイル Cart.java CartBean.java クライアント側 CartClient.java そのほか、いくつかの設定ファイル

インタフェースの作成

Cart.java (1) import java.util.Collection; import javax.ejb.Remote; public interface Cart { public void addItem(String item); public void removeItem(String item); public Collection getItems(); }

Cart.java (2) Stateful Session Beans が公開するメソッドを定義しているインタフェース

Stateful Session Beans の作成

CartBean.java (1) import javax.ejb.PostConstruct; import javax.ejb.Stateful; @Stateful public class CartBean implements Cart { @PostConstruct public void initialize() { items = new ArrayList(); } public void addItem(String item) {…}

CartBean.java (2) @PostConstruct Stateful Session Bean であることを示すために、@Stateful アノテーションを付加する @PostConstruct アノテーションが付加されたメソッドは、インスタンス生成時に呼びだされる

クライアントプログラム

CartClient.java Context context = new InitialContext(); Cart cart = (Cart) context.lookup("java:comp/env/Cart"); cart.addItem("Item1"); cart.addItem("Item2"); Collection items = cart.getItems(); for (Iterator i = items.iterator(); i.hasNext();) { String item = (String) i.next(); System.out.println(" " + item); }

Cart に対する操作 // cart に Item1 を追加 cart.addItem("Item1"); Collection items = cart.getItems();

課題

課題 銀行の口座を表す Stateful Session Bean をつくる。

課題の クライアントプログラム例 Context context = new InitialContext(); Bank bank = (Bank)context.lookup( ”java:comp/env/ejb/Bank"); bank.deposit(10000); // 預ける bank.draw(5000); // おろす // 現在の残高は? Int account = bank.getAccount();