Java:Servletスコープの利用

Servletアプリケーションでデータを共有したい場合は、Servletスコープを利用します。

 

スコープの種類等は、以下のサイト様に詳しく記載されてます。

www.javaroad.jp

Strutsで作られたアプリケーションで、applicationスコープを使ったのでメモ書き。

■ スコープにデータを登録する

 // ServletContextをDIして
@Resource
protected ServletContext application;

// メモリ上にデータを登録する
application.setAttribute("name", 登録したいデータ);

■ スコープからデータを取得する

 // ServletContextをDIして
@Resource
protected ServletContext application;

// メモリ上からデータを取得する
String name = (String)application.getAttribute("name");

 

※ 必要ならば

Tomcat起動時の初期処理でアプリケーションスコープにデフォルト値を登録する

   app.diconの末尾に初期処理のクラスを登録

<component name="initService" class="クラスのパス">
<initMethod name="初期処理メソッド名"></initMethod>
</component>

  あとは初期処理メソッドの中に、メモリへの登録処理を実装するだけです。