About S2SqlMap

iBATIS SQL Map Seasar2対応パッケージ。(2.2.10)

S2SqlMapはSpring FrameworkのApache iBATIS SQL MapsサポートのSeasar向け移植ライブラリです。 S2SqlMapではコネクションプール/トランザクションマネージャ/例外および自動バインディング部分についてSeasarへ向けた移植を行っております。 Lob群についてはorg.seasar.s2sqlmap.spring.lob.portに関連するクラスをパッケージングしています。 (OracleLobCreator/OracleLobHandlerクラスは保留されています。) 

S2SqlMapのテスト/コンパイル

テスト/コンパイル作業は以下の通りです。作業にはMavenが必須です。

  • まず.maven/repositoryをローカルのレポジトリにコピーします。(java.transaction)
  • 付属のrundb.shを実行します。(Windowsの場合はbatにリネームし実行します。)
  • 付属のrunclient.shを実行し、localhostのxdbに接続し、test以下に付属するsqlファイルの内容を実行します。
  • コマンドラインからmaven testを実行します。

S2SqlMap利用方法

SQLMap(1)

SQLMapを利用する場合のdiconファイルの内容は以下の通りです。


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container//EN"
"http://www.seasar.org/dtd/components.dtd">
<components>
    <include path="j2ee.dicon"/>
    
    <component class="org.seasar.s2sqlmap.S2SqlMapConfig">
      <property name="configLocation">"/org/seasar/s2sqlmap/ibatis/sql-map-config.xml"</property>
      <initMethod name="init"/>
    </component>
 
    <component
    name="dao" 
    class="org.iglab.seasar.ibatis.S2SqlMapTestDao"/>
</components>

S2SqlMapConfigおよびSQLMap2対応のS2SqlMapClientConfigプロパティーconfigLocationにはシステムリソース内のSQL Map Configの位置を示すパスを指定します。付属のサンプルでは以下の通りです。


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sql-map-config
    PUBLIC "-//iBATIS.com//DTD SQL Map Config 1.0//EN"
    "http://www.ibatis.com/dtd/sql-map-config.dtd">
<sql-map-config>
  <sql-map resource="com/example/forum/HsqldbForum.xml"/>
</sql-map-config>

DaoクラスとSqlMapConfig/SqlMapClientConfigとの対応は以下の通りです。

DaoSqlMap/SqlMapClientプロパティー
S2SqlMapDaoSupportorg.seasar.s2sqlmap.S2SqlMapConfigSqlMapConfig
S2SqlMapClientDaoSupportorg.seasar.s2sqlmap.S2SqlMapClientConfigSqlMapClientConfig

SQLMap2

SQLMap2を利用する場合のdiconファイルの内容は以下の通りです。


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container//EN"
"http://www.seasar.org/dtd/components.dtd">
<components>
    <include path="j2ee.dicon"/>
    
    <component class="org.seasar.s2sqlmap.S2SqlMapClientConfig">
      <property name="configLocation">"/org/seasar/s2sqlmap/ibatis/sql-map2-config.xml"</property>
      <initMethod name="init"/>
    </component>
 
    <component
    name="dao" 
    class="org.seasar.s2sqlmap.S2SqlMapClientTestDao">
      <initMethod name="init"/>
    </component>
</components>

org.seasar.s2sqlmap.support.S2SqlMapClientDaoSupportについてカスタムなS2SqlMapClientTemplateが指定された場合を除いて、 initMethodを省略することができます。


    <component
    name="dao" 
    class="org.seasar.s2sqlmap.S2SqlMapClientTestDao"/>