データ ソースのプロパティ

エンティティ Bean の各インスタンスは通常、リレーショナル データベースの行に対応します。つまり、BMP EJB の必須メソッドでは、そのメソッドに適切なデータベース アクセスを実行する必要があることを意味します。これらのデータベース操作の実行時に JRun データ ソースを使用できます。JRun データ ソースを使用すると、JDBC ドライバへの変更からコードが保護され、接続プールも提供されます。

次のスニペットは、JRun データ ソースのアクセスに使用するコードを示します。

...
try {
  // コンテキストのインスタンスを作成します。
  Context ctx = new InitialContext();
  // java:comp/env/jdbc/jdbc-datasource-name からデータ ソースを取得します。
  // JMC の JDBC データ ソース名を定義します。
  DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/source1");
  // データベース ロジックを続行します。
  // この例は ejbLoad メソッドからの引用です。
  Connection connection = ds.getConnection();
  try {
    Statement statement = connection.createStatement();
    // _context は EntityContex を保持する Bean レベルの変数です。
    // SetEntityContext メソッドによって設定されます。
    ResultSet results = 
      statement.executeQuery("SELECT value FROM account WHERE id = " + 
        _context.getPrimaryKey());
    results.next();
    // _value は データベースから取得された 
    // 「value」列を保持する Bean レベルの変数です。
    _value = results.getInt(1);

    results.close();
    statement.close();
  }
  finally {
    connection.close();
  }
}
catch (Exception e) {
  throw new EJBException(e);
}
...

メモ

EJB エンジンには、JRun データ ソースの使用に代わるプロパティファイル ベースの メソッドが含まれています。スタンドアロン モードで EJB エンジンを実行する場合、 代わりにこのメソッドを使用できます。詳細については、『JRun 拡張設定ガイド』を 参照してください。