我正在尝试在Tomcat7
容器中实现数据池。我的理解是我必须使用以下代码来检索数据连接
Context initContext;
DataSource datasource = null;
try {
initContext = new InitialContext();
Context envContext = (Context) initContext.lookup("java:/comp/env");
datasource = (DataSource) envContext.lookup("jdbc/bolsms");
} catch (NamingException ex) {
Logger.getLogger(ReceiveC2DMRegistration.class.getName()).log(Level.SEVERE, null, ex);
}
我的问题
对于Context
,我是否必须导入javax.naming.context
或org.apache.catalina.Context
,而DataSource
是否必须导入javax.sql.DataSource
或org.apache.tomcat.jdbc.pool.DataSource
?< / p>
答案 0 :(得分:2)
声明针对特定于Tomcat的类/接口会使您的webapp紧密耦合到Tomcat,从而使其无法在其他服务器上运行。你不想拥有它。
始终在可能的情况下声明标准Java SE / EE类/接口。这样你的webapp就可以在所有服务器上运行(Tomcat,Glassfish,JBoss AS,Jetty等)。