ページの先頭行へ戻る
Interstage Business Application Server オープンJavaフレームワークユーザーズガイド
FUJITSU Software

4.3.5 Spring Frameworkとの連携

Spring Frameworkが提供するDaoフレームワークのSqlMapClientDaoSupportを使用します。

■BudgetDAO.java

package com.fujitsu.interstage.apfw.samples.dao.bas;
import com.fujitsu.interstage.apfw.samples.orm.bas.Budget
   
    public interface BudgetDAO {
        //(1)
        void insert(Budget budget);
・・・
}

(1)メソッド宣言

使用するメソッドを宣言します。

■BudgetDaoImpl.java

package com.fujitsu.interstage.apfw.samples.dao.bas;
import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;
import org.springframework.dao.DataAccessException;
・・・
// (1)
public class BudgetDaoImpl extends SqlMapClientDaoSupport implements BudgetDao {
・・・
    // (2)
    public void insert(Budget budget) throws DataAccessException {
        getSqlMapClientTemplate().insert("BAS_BUDGET.insert ", budget);
    }
・・・
}

(1)SqlMapClientDaoSupportを利用した実装クラスの作成

Spring Frameworkが提供するSqlMapClientDaoSupportを継承して実装クラスを作成します。

(2)メソッドの作成

getSqlMapClientTemplate()を利用してSQL文を発行するメソッドを作成します。

Spring Frameworkの設定ファイルで以下のように設定します。

■applicationContext.xml

<beans>
<!-- SqlMap setup for iBATIS Database Layer -->
<!-- (1) -->
    <bean id="sqlMapClientFact" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
        <property name="configLocation">
            <value> sqlMapConfig.xml</value>
        </property>
        <property name="dataSource">
            <ref local="dataSource" />
        </property>
    </bean>
<!-- (2) -->
    <bean id="BudgetDao" class="com.fujitsu.interstage.apfw.samples.orm.bas.BudgetDaoImpl">
        <property name="sqlMapClient" ref="sqlMapClientFact"/>
    </bean>
</beans>

(1)iBATISクライアントの登録

SqlMapClientFactoryBeanを設定します。

(2)Daoの実装の登録

Daoの実装のsqlMapClientプロパティに(1)で設定したbeanを指定します。

SQL Map設定ファイルで以下のように設定します。

■sqlMapConfig.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
 "http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
   <!-- (1) -->
   <sqlMap resource="BAS_BUDGET_SqlMap.xml" />   
</sqlMapConfig>

(1)Sql Mapファイルの設定

Sql Mapファイルを設定します。