导入javax.naming.context或org.apache.catalina.Context?

时间:2012-07-16 17:08:10

标签: java tomcat servlets netbeans database-connection

我正在尝试在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.contextorg.apache.catalina.Context,而DataSource是否必须导入javax.sql.DataSourceorg.apache.tomcat.jdbc.pool.DataSource?< / p>

1 个答案:

答案 0 :(得分:2)

声明针对特定于Tomcat的类/接口会使您的webapp紧密耦合到Tomcat,从而使其无法在其他服务器上运行。你不想拥有它。

始终在可能的情况下声明标准Java SE / EE类/接口。这样你的webapp就可以在所有服务器上运行(Tomcat,Glassfish,JBoss AS,Jetty等)。