Spring Frameworkランタイムは作成したBean定義ファイルに従って動作します。
運用形態に応じて用意するBean定義ファイル数は異なり、基本型の場合は、最低1つのBean定義ファイルを作成します。Web-AP分離型の場合は、最低2つのBean定義ファイルを作成します。
Bean定義ファイルにはSpring Frameworkアプリケーションで利用するクラスをBeanとして定義します。必要に応じてAOPやDB、トランザクションなどの定義を記述します。
この例では、基本型のBean定義ファイルの例を記述します。
■applicationContext.xmlまたはサーブレット名-servlet.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> <!-- (1) AOP定義 --> <aop:aspectj-autoproxy/> <!-- AOP定義から参照されるクラスをbeanとして定義します --> <bean id="sampleAdvice" class="test.aopDatabaseCheck" /> <!-- (2) ビューの定義 --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/"/> <property name="suffix" value=".jsp"/> </bean> <!-- (3) コントローラの定義 --> <mvc:annotation-driven/> <context:component-scan base-package="test"/> <!-- (4) ハンドラマッピング--> <mvc:default-servlet-handler/> <!-- (5) 業務アプリケーションで使用するBeanの定義--> <bean id="businessService" class="test.ListServiceImpl"> <property name="employeeDao" ref="employeeDao00"/> </bean> <bean id="employeeDao00" class="test.EmployeeDaoImpl" /> </beans> |
(1) AOP定義
指定したクラス/メソッドに、指定したタイミングで、Beanとして定義したクラスの指定したメソッドを実行します。
処理を実行するクラス/メソッドには、前方/後方/完全一致などの条件を指定することができ、処理を実行するタイミングは、指定したメソッドの直前/直後/前後や例外発生時などを指定することができます。
ポイント
AOP機能を利用する場合には、以下に格納されているモジュールをクラスパスに定義する必要があります。
[Interstageのインストールディレクトリ]\BAS\lib\aspectjweaver.jar |
/opt/FJSVibs/lib/aspectjweaver.jar |
(2) ビューの定義
業務アプリケーションの処理結果をビューで表示するためにビューリゾルバを指定します。
(3) コントローラの定義
業務アプリケーションおよび業務アプリケーションの処理結果を格納するコントローラを指定します。
(4) ハンドラマッピング
リクエストURLとコントローラを関連付けるための条件をハンドラマッピングに定義します。
(5) 業務アプリケーションで使用するBeanの定義
Beanとして定義したクラスは、DIによって実行時に自動的にインスタンスが生成されます。
注意
beanタグのid属性に使用可能な文字はXML名前空間のNCName型です。NCName型に準拠しない文字を使用したい場合はid属性の代わりにname属性を使用する必要があります。
■WARファイルの作成
WARファイルを作成します。
WARファイルの作成方法については、“Interstage Application Server/Interstage Web Server Java EE運用ガイド”を参照してください。
■アプリケーションの配備
作成したWARファイルをInterstage Java EE管理コンソールから配備します。