データベースの接続設定

Universal Java Application Framework X(USAX)におけるデータベースの接続設定について

設定ファイルの配置場所とファイル名

設定ファイルの配置場所

設定ファイルの配置場所はcommon.propertiesで設定します。
settings.directory.jdbcへ配置場所のパスを設定してください。
※サンプルプログラムでは/jp/co/hogehoge/resource/jdbc/が設定されています。

    # データベース接続設定の配置先
    settings.directory.jdbc = /jp/co/hogehoge/resource/jdbc/
  

設定ファイルのファイル名

上記の配置場所に置くファイルは{トランザクションID}.xmlとしてください。
トランザクションはこのXMLファイルごとにトランザクションIDで管理されます。
(例) default.xml

データベース接続設定の記述

接続設定(XML)はjdbc.xsdに従って設定してください。

様式


    <jdbc controller="jp.co.cam.usax.appl.domain.database.impl.TransactionAPI"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:noNamespaceSchemaLocation="./jdbc.xsd">

        <database code="{データベースID}" type="{データベース種別}"
         driver="{JDBCドライバー}" naming="{JNDI設定ファイル名}" >
            <connect mode="DATASOURCE|DRIVER" name="{接続先パスまたはJNDI取得名}"
              schema="{スキーマ名}" user="{ユーザーID}" password="{パスワード}">
               <query>
                <![CDATA[
                 {初期実行SQLがあれば記述}
                ]]>
               </query>
            </connect>
        </database>
    </jdbc>
  

設定例(DriverManagerによる接続)


    <jdbc controller="jp.co.cam.usax.appl.domain.database.impl.TransactionAPI"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:noNamespaceSchemaLocation="./jdbc.xsd">

        <database code="default" type="PGSQL"
         driver="org.postgresql.Driver">
            <connect mode="DRIVER" name="jdbc:postgresql://127.0.0.1:5432/example"
              schema="public" user="postgres" password="postgres">
               <query>
                <![CDATA[
                 set search_path to "public"
                ]]>
               </query>
            </connect>
        </database>
    </jdbc>
  

設定例(DataSourceによる接続)


    <jdbc controller="jp.co.cam.usax.appl.domain.database.impl.TransactionAPI"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:noNamespaceSchemaLocation="./jdbc.xsd">

        <database code="default" type="PGSQL"
         naming="default">
            <connect mode="DATASOURCE" name="jdbc:comp/env/jdbc/default"
              schema="public">
               <query>
                <![CDATA[
                 set search_path to "public"
                ]]>
               </query>
            </connect>
        </database>
    </jdbc>
  
JNDIを介して接続プールを取得する場合は、JNDIの設定が必要です。
JNDIの設定についてはこちらを参照

JTA(Java Transaction API)の設定

JTAを使用することで分散トランザクションを制御し、2フェーズコミットを実現します。
使用する場合は、データベース接続設定にtransaction-apiの以下を設定してください。

様式


    <transaction-api naming="{JNDI設定ファイル名}" jndi="{JNDI取得名}" />
  

設定例


    <transaction-api naming="default" jndi="java:comp/env/UserTransaction" />
  


©Camel engineering LLP