Tomcat7数据库连接池 for SQLServer 2008

使用连接池的好处是为了避免频繁的创建、关闭数据库连接,从而提高WEB应用的效率。

网上多数为连接mysql方式,下面是我自己总结的连接sqlserver2008的配置方法。

一、配置Tomcat7 conf\server.xml,找到</Host>,以此标签之前加入如下配置

        <!-- 配置虚拟目录为D盘servlet2目录 -->
        <Context path="/servlet2" docBase="d:\servlet2" debug="0" reloadable="true">
              <!--配置sqlserver数据库的连接池, 
                需要做的额外步骤是将sqlserver的Java驱动类(sqljdbc4.jar)放到tomcat的lib目录下        
               -->
              <Resource name="dbspdb"
              auth="Container"
              type="javax.sql.DataSource"
              username="sa"
              password="123456"
              maxIdle="30"
              maxWait="10000"
              maxActive="100"
              driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
              url="jdbc:sqlserver://127.0.0.1:1433;Database=spdb"/>

        </Context>

【提示】name 资源名,自己定义即可,数据库的用户名、密码及连接地址请根据自己实际情况配置。

二、在servlet中调用连接

import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;


//通过数据源取得连接

public class Conn{
    
    private Connection con=null;
    
    public Connection getConn(){
        try {
            //初始化查找命名空间
            Context ctx = new InitialContext();
              
            //参数java:/comp/env为固定路径
            Context envContext = (Context)ctx.lookup("java:/comp/env");
             
            //参数jdbc/spdb为数据源和JNDI绑定的名字
            DataSource ds = (DataSource)envContext.lookup("dbspdb");
             
            con = ds.getConnection();
                 
        } catch (NamingException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        
        return con;
    }
}

以上部分为本人亲测可用,希望可以为您提供一定参考价值。欢迎指正!

 以上内容有待改进,可用最新连接池,参考:http://www.open-open.com/lib/view/open1397099163669.html

posted @ 2017-04-26 15:42  Leo5461  阅读(848)  评论(0编辑  收藏  举报