在所有servlet之间共享JDBC数据源连接

时间:2015-04-20 17:05:08

标签: tomcat servlets jdbc apache-commons-dbcp jdbc-pool

我是java的新手。我最近在tomcat中学习了JDBC连接池。 为了使代码重用,我希望在所有servlet之间共享连接,而不会产生任何冲突。

这是我的代码段:

  public class GetConnection{

    private DataSource ds;
    public Connection getConnection(){
      try {
         InitialContext initialContext = new InitialContext();
         Context context = (Context) initialContext.lookup("java:comp/env");
         ds = (DataSource) context.lookup("connpool");
      }
      catch (NamingException e) {

      }
     return ds.getConnection();
    }

 }  

我从不同的servlet调用getConnection方法,比如

            //In servlet1 doGet Method
             Connection conn = GetConnection.getConnection();

这是正确的方法。或者由于并发线程,我会遇到任何问题。

1 个答案:

答案 0 :(得分:0)

不,你不要!不要手动弄乱连接。至少使用Commons DbUtils或其他任何隐藏复杂性的东西。我看到过多的代码与陈旧的连接。