「javax.naming.Context」は、Java EE 開発の内部で一般的に使用されます。context.xml 内のリソースの指定された名前でルックアップ関数を呼び出すことにより、動的なデータベース接続を確立するために使用すると非常に便利です。サンプル コードは次のとおりです。「db_name」は、データベース リソースを識別するために使用した名前です。
Context ctx = new InitialContext();
DataSource ds = ctx.lookup("java:comp/env/jdbc/db_name");
私の懸念は、同じコンテキストを使用するルックアップ リソースと、異なるコンテキストを使用するルックアップ リソースの違いは何かということです。そして、どちらのアプローチがより理にかなっていますか? すべてのデータベース リソースが同じ context.xml ファイル内で定義されているとします。例えば:
Context ctx = new InitialContext();
DataSource ds1 = ctx.lookup("java:comp/env/jdbc/db_name_ds1");
DataSource ds2 = ctx.lookup("java:comp/env/jdbc/db_name_ds2");
と
Context ctx_ds1 = new InitialContext();
Context ctx_ds2 = new InitialContext();
DataSource ds1 = ctx_ds1.lookup("java:comp/env/jdbc/db_name_ds1");
DataSource ds2 = ctx_ds2.lookup("java:comp/env/jdbc/db_name_ds2");
共有していただきありがとうございます。