Tomcat8 连接池

1、所有的tomcat项目共用一个连接池配置

1.1 修改conf->context.xml文件,在Context节点下配置

<Resource name="jdbc/myDataSource" type="javax.sql.DataSource" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" maxIdle="2" maxWait="5000" username="sa" password="xx" url="jdbc:sqlserver://127.0.0.1\SQLEXPRESS:1433;DatabaseName=ShopSystem" maxActive="4"/>
<!--name:DataSource的名称--> 
<!--type:数据源对应的java类型,一般设计为javax.sql.DataSource--> 
<!--username:数据库登陆名--> 
<!--password:数据库登陆密码--> 
<!--driverClassName:指定数据库JDBC驱动程序--> 
<!--url:指定数据库的URL--> 
<!--maxIdle:连接池处于空闲状态的数据库连接的最大数目,取0表示不受限制--> 
<!--maxWait:连接池中数据库连接处于空闲状态的最长时间(以毫秒为单位),取0表示无限制等待时间--> 
<!--maxActive:连接池处于活动状态的数据库连接的最大数目,去0表示不受限制-->

1.2 修改tomcat的web.xml文件

在web-app节点下配置:

<resource-ref> 
  <res-ref-name>jdbc/myDataSource</res-ref-name>  
  <res-type>javax.sql.DataSource</res-type>  
  <res-auth>Container</res-auth> 
</resource-ref>

2、每个Web项目独立用自己的连接池配置

2.1 在Web项目的META-INF目录下创建context.xml文件,内容如下

<Context path="/"> 
  <Resource name="jdbc/myDS" type="javax.sql.DataSource" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" maxIdle="2" maxWait="5000" username="sa" password="xx" url="jdbc:sqlserver://127.0.0.1\SQLEXPRESS:1433;DatabaseName=ShopSystem" maxActive="4"/> 
</Context>

2.2 修改Web项目的WEB-INF目录下的web.xml文件

在web-app节点下配置:

<resource-ref> 
  <res-ref-name>jdbc/myDS</res-ref-name>  
  <res-type>javax.sql.DataSource</res-type>  
  <res-auth>Container</res-auth> 
</resource-ref>


3、不管用上面哪种连接池,都需要把数据库驱动jar文件拷贝到tomcat的lib目录下

4、测试程序

<%
Context initContext=new InitialContext();
Context envContext=(Context)initContext.lookup("java:comp/env");
DataSource ds=(DataSource)envContext.lookup("jdbc/myDataSource");
Connection connection=ds.getConnection();
Statement statement=connection.createStatement();
ResultSet resultSet=statement.executeQuery("select * from admin");
while(resultSet.next()) {
    out.print(resultSet.getString("a_name"));
out.print("<br />");
}

resultSet.close();
statement.close();
connection.close();
%>

推荐极客学院文章 点击

原文地址:https://www.cnblogs.com/kamil/p/6382473.html