0

いくつかの jdbc 呼び出しを含む特定のコードを再利用する必要があります。既存のコードは、変更できない jar 内にあります。彼らは、このようなデータベース接続のJNDIルックアップを行っています

InitialContext context = new InitialContext();
DataSource dataSource = (DataSource) context.lookup("java:jdbc/testDB");

これは JBoss では正常に機能しますが、Tomcat サーバーで同じものを使用しようとすると失敗します。少しグーグルで調べた後、Tomcatの場合、このようなことをする必要があることがわかりました。

InitialContext context = new InitialContext();
DataSource dataSource = (DataSource) context.lookup("java/comp/env/:jdbc/testDB");

Tomcat のためだけに java/comp/env を持つようにコードを変更することはできません。コードを変更せずにリソースを見つけることができるように、これを解決するためのサーバーに依存しない方法(構成ファイルによる)はありますか?

4

1 に答える 1

0

その「特定のコード」は-何ですか?..の場合、EJB, Servlet, JSPインジェクションを実行できます。

@Resource(mappedName = "jdbc/testDB")
DataSource dataSource;
于 2012-09-20T07:01:15.200 に答える