Interstage Application Server/Interstage Web Server J2EE ユーザーズガイド
目次 索引 前ページ次ページ

第3部 EJB編> 第10章 EJBサービスの機能> 10.1 Session Beanの実行環境

10.1.1 Session Beanの形態

 Session Beanは、クライアントとの対話処理を行うためのオブジェクトです。Session BeanにはSTATEFULとSTATELESSの2種類が存在します。
 それぞれの特徴を以下に示します。

■STATEFUL Session

 STATEFULは、STATELESSに比べて、EJBアプリケーションおよび、クライアントアプリケーションを容易に記述できるメリットがあります。

 STATEFULでは、クライアントとEJBアプリケーションのインスタンスが1対1となります。
 そのため、インスタンスを消去しないかぎり、クライアントとEJBアプリケーションの対話の状態を保持します。

 ビジネスメソッドで使用する変数は、ビジネスメソッドを終了しても保証されます。
 そのため、複数のメソッドにまたがる処理ができます。

 また、EJBアプリケーションで使用するトランザクションに関しても、トランザクションの開始から終了までの間に、クライアントから複数のメソッド呼出しができます。

■STATELESS Session

 STATELESSは、STATEFULに比べて、メモリ消費量が少ないというメリットがあります。
 STATELESSは、クライアント数をM個、EJBアプリケーションのインスタンス数をN個とすると、M>=Nにできます。
 これにより、STATEFULに比べて、EJBアプリケーションのインスタンス数を少なくできます。

 STATELESSでは、インスタンスは複数のクライアントから共用されます。
 そのため、複数のビジネスメソッド間では、クライアントとEJBアプリケーションの対話の状態を保持しません。

 ビジネスメソッドで使用される変数は、ビジネスメソッドを終了すると保証されません。
 また、EJBアプリケーションで使用するトランザクションに関しても、トランザクションの開始と終了は、メソッド内に閉じていなくてはなりません。


目次 索引 前ページ次ページ

Copyright 2008 FUJITSU LIMITED