如何从tomcat Webapp中的context.xml文件获取资源?

这是我的 文件:

...

<Resource auth="Container"

driverClass="net.sourceforge.jtds.jdbc.Driver"

type="com.jolbox.bonecp.BoneCPDataSource"

idleMaxAge="240"

idleConnectionTestPeriod="60"

partitionCount="3"

acquireIncrement="1"

maxConnectionsPerPartition="10"

minConnectionsPerPartition="3"

statementsCacheSize="50"

releaseHelperThreads="4"

name="jdbc/MyDatasource"

username="my_username"

password="my_password"

factory="org.apache.naming.factory.BeanFactory"

jdbcUrl="jdbc:jtds:sqlserver://localhost:12345/my_database"

/>

...

我已经尝试过将ServletContext.getResource(java.lang.String)与资源的名称(“

jdbc / MyDatasource”)一起使用,但是Tomcat抱怨名称不是以“ /”开头。我也尝试使用“ / jdbc /

MyDatasource”,但是这次它返回null。

我主要需要 来执行与数据库服务器 (请参阅服务器是否在线且可运行)。

回答:

关键字是:JNDI。中的资源context.xml不是“系统资源”,而是JNDI资源。尝试这个:

InitialContext ic = new InitialContext();

// that's everything from the context.xml and from the global configuration

Context xmlContext = (Context) ic.lookup("java:comp/env");

DataSource myDatasource = (DataSource) xmlContext.lookup("jdbc/MyDatasource");

// now get a connection to see if everything is fine.

Connection con = ds.getConnection();

// reaching this point means everything is fine.

con.close();

以上是 如何从tomcat Webapp中的context.xml文件获取资源? 的全部内容, 来源链接: utcz.com/qa/405984.html

回到顶部