DB2 JDBCドライバーのダウンロードと配置
DB2のJDBCドライバー(db2jcc.jarおよびdb2jcc_license_cu.jar)をダウンロードします。
これらのJARファイルをTomcatのlibディレクトリに配置します(通常は<TOMCAT_HOME>/lib)。
Tomcatのcontext.xmlファイルにデータソースを定義
Tomcatのconfディレクトリにあるcontext.xmlファイルにデータソースを定義します。以下はその例です。
<Context>
<!-- 既存の設定がある場合、これに続けて追加します -->
<Resource name="jdbc/DB2DataSource"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.ibm.db2.jcc.DB2Driver"
url="jdbc:db2://as400.example.com:50000/yourDatabaseName"
username="yourUsername"
password="yourPassword"
maxTotal="20"
maxIdle="10"
maxWaitMillis="10000"
/>
</Context>
ここで、name
属性の値(例:jdbc/DB2DataSource
)は、アプリケーション内でJNDIルックアップに使用する名前です。
web.xmlファイルにリソースリファレンスを定義
アプリケーションのWEB-INF
ディレクトリにあるweb.xml
ファイルにリソースリファレンスを追加します。
<web-app>
<!-- 既存の設定がある場合、これに続けて追加します -->
<resource-ref>
<description>DB2 DataSource</description>
<res-ref-name>jdbc/DB2DataSource</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
アプリケーションコードでデータソースを利用
Javaコードでデータソースを取得し、データベース接続を行います。以下はその例です。
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
public class DB2ConnectionExample {
public static void main(String[] args) {
Connection connection = null;
try {
Context initContext = new InitialContext();
DataSource ds = (DataSource) initContext.lookup("java:/comp/env/jdbc/DB2DataSource");
connection = ds.getConnection();
// データベース操作をここに記述します
} catch (NamingException | SQLException e) {
e.printStackTrace();
} finally {
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
注意点
JDBC URLの設定:
url
属性の値(例:jdbc:db2://as400.example.com:50000/yourDatabaseName
)は、DB2のJDBC URLフォーマットに従って正しく設定してください。ホスト名、ポート番号、およびデータベース名を適切に指定します。
ドライバーの確認:
DB2 JDBCドライバーのクラス名(例:com.ibm.db2.jcc.DB2Driver
)を正しく指定します。DB2のバージョンによりクラス名が異なる場合があります。
ユーザー名とパスワードの管理:
username
およびpassword
属性にデータベースの認証情報を指定します。セキュリティを考慮し、可能であればこれらの情報を暗号化するか、環境変数から取得するように設定します。
これにより、TomcatからDB2(AS400で動作しているデータベース)へ接続する設定が完了します。必要に応じて接続プールのパラメータを調整し、パフォーマンスを最適化してください。