ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server Java EE運用ガイド

3.8.3 サポートデータベースと設定方法

Interstage永続性プロバイダがサポートしているデータベースについては、「1.1.3 データベース関連」を参照してください。
その他の永続性プロバイダを使用する場合にも、本製品がサポートしているデータベースを使用してください。

データベースの設定方法は、実行環境により異なります。

Java EE環境でのデータベース設定

EJB、WebまたはアプリケーションクライアントコンテナでJPAを使用する場合、以下を行ってください。

データソースを用意します。データソースの作成方法などについては、「5.14 データベースの環境設定」を参照してください。
用意したデータソースのデータソース名をdeployment descriptor (persistence.xml)の<jta-data-source>または<non-jta-data-source>に定義します。

本製品では、以下の順番でデータソース名が定義箇所から取得されます。

EJBまたはWebコンテナでInterstage永続性プロバイダを使用しデータソース名を定義していない場合、デフォルトのデータソース名("jdbc/__default")が使用されます。
JDBC接続プールから取得される接続が必要な場合、自動的にトランザクションコンテキストに登録されます。接続プールの非トランザクション接続設定が無視されます。

JTAトランザクションを使用する場合のデータソース定義例

  <persistence xmlns="http://java.sun.com/xml/ns/persistence"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
          http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
      version="1.0">
    <persistence-unit name="com.company.my.pu" transaction-type="JTA">
      <jta-data-source>jdbc/myDatasource</jta-data-source>
    </persistence-unit>
  </persistence>

Java SE環境でのデータベース設定

アプリケーション開発やテスト時に、Java SE環境でJavaスタンドアロンアプリケーションとしてInterstage永続性プロバイダを使用できます。その場合、以下のプロパティでデータベースの定義をdeployment descriptor (persistence.xml)、またはエンティティマネージャファクトリの取得時にjavax.persistence.PersistenceのcreateEntityManagerFactory(String, Map)メソッドに指定します。両方に指定した場合、後者に定義した設定が優先されます。

永続性ユニットプロパティ名

説明

toplink.jdbc.driver

JDBCドライバクラス名(java.sql.Driverの実装クラス)です。

toplink.jdbc.url

データベースへのアクセスでドライバが想定するJDBC URLです。

toplink.jdbc.user

データベースへの認証アクセスで使用されるユーザ名です。

toplink.jdbc.password

選択しているデータベースへのアクセスに使用されるパスワードです。パスワードエイリアスは使用できません。


JDBCドライバの使用に必要なドライバクラス名、JDBC URL、ライブラリやクラスパス設定については、JDBCドライバのマニュアルを参照してください。

Java SEスタンドアロンアプリケーションのデータベース定義例

  <persistence xmlns="http://java.sun.com/xml/ns/persistence"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
          http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
      version="1.0">
    <persistence-unit name="com.company.my.pu"
        transaction-type="RESOURCE_LOCAL">
      <class>com.example.entity.Employee</class>
      <class>com.example.entity.Department</class>
      <properties>
        <property name="toplink.jdbc.driver"
            value="oracle.jdbc.OracleDriver"/>
        <property name="toplink.jdbc.url"
            value="jdbc:oracle:thin:@dbhost:1521:mysid"/>
        <property name="toplink.jdbc.user"
            value="user1"/>
<property name="toplink.jdbc.password"
            value="pwd1"/>
</properties> </persistence-unit> </persistence>