2

このコードを使用して、jndi ルックアップを介してデータベース接続にアクセスしました。

Context initContext = new InitialContext();
Context envContext  = (Context)initContext.lookup("java:/comp/env");
DataSource datasource = (DataSource)envContext.lookup("TestDB");
Connection connection = datasource.getConnection();

正常に動作していました。後で、これを注釈に置き換えて、次のコードで同じことを行いました。

@Resource(name="TestDB")
DataSource datasource;

methodName(){
if(datasource!=null){
Connection connection = datasource.getConnection();}
else{
   System.out.println("Datasource is null");
     }
    }

しかし、「DataSource is null」が表示されました。@Resource(lookup="TestDB") も試しましたが、「DataSource is null」が引き続き表示されます。データソースが null である理由

4

1 に答える 1