服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

tomcat下配置mysql数据库连接池


  1.在$catalina_home/conf/server.xml中添加配置信息,声明连接池的具体信息,添加内容如下:
  
  <!--声明连接池-->
  
  <resource name="jdbc/mysql" auth="container" type="javax.sql.datasource"/>
  
  <!-- 对连接池的参数进行设置 -->
  
  <resourceparams name="jdbc/mysql">
  
  <parameter>
  
  <name>factory</name>
  
  <value>org.apache.commons.dbcp.basicdatasourcefactory</value>
  
  </parameter>
  
  <parameter>
  
  <name>maxwait</name>
  
  <value>5000</value>
  
  </parameter>
  
  <parameter>
  
  <name>maxactive</name>
  
  <value>20</value>
  
  </parameter>
  
  <parameter>
  
  <name>username</name>
  
  <value>shopadm</value>
  
  </parameter>
  
  <parameter>
  
  <name>password</name>
  
  <value>123</value>
  
  </parameter>
  
  <parameter>
  
  <name>url</name>
  
  <value>jdbc:mysql://localhost/shopdb?useunicode=true&charact-erencoding=gb2312</value>
  
  </parameter>
  
  <parameter>
  
  <name>driverclassname</name>
  
  <value>com.mysql.jdbc.driver</value>
  
  </parameter>
  
  <parameter>
  
  <name>maxidle</name>
  
  <value>10</value>
  
  </parameter>
  
  </resourceparams>
  
  2. 在$catalina_home/conf/web.xml的</web-app>前添加如下信息:
  
  <resource-ref>
  
  <description>db connection</description>
  
  <res-ref-name>jdbc/mysql</res-ref-name>
  
  <res-type>javax.sql.datasource</res-type>
  
  <res-auth>container</res-auth>
  
  </resource-ref>
  
  其中<res-ref-name>中的参数名必须和server.xml中声明的连接名一样。
  
  3. 在$catalina_home/conf/catalina/localhost目录下找到需要进行数据库连接的当前程序的配置信息,比如这里是shopping.xml,在这个文件中添加如下信息:
  
  <context …>
  
  …
  
  <resourcelink name=”jdbc/mysql” global=”jdbc/mysql” type=”javax.sql.datasource”/>
  
  …
  
  </context>
  
  大功告成!
  
  在此基础上,参考tomcat官方网站的用户手册,摸索出另外一种配置连接池的方法,这个方法不需要对server.xml进行修改,只要对需要使用到连接池的程序的配置文档进行修改就可以了。方法如下:
  
  1.$catalina_home/conf/catalina/localhost目录下找到需要数据库连接池的程序的配置文档,此处是shopping.xml。在<context> </context>之间添加如下信息,声明一个数据库连接池:
  
  <resource name="jdbc/mysql" auth="container" type="javax.sql.datasource"/>
  
  <resourceparams name="jdbc/mysql">
  
  <parameter>
  
  <name>factory</name>
  
  <value>org.apache.commons.dbcp.basicdatasourcefactory</value>
  
  </parameter>
  
  <parameter>
  
  <name>maxwait</name>
  
  <value>5000</value>
  
  </parameter>
  
  <parameter>
  
  <name>maxactive</name>
  
  <value>20</value>
  
  </parameter>
  
  <parameter>
  
  <name>password</name>
  
  <value>123</value>
  
  </parameter>
  
  <parameter>
  
  <name>url</name>
  
  <value>jdbc:mysql://localhost/shopdb?useunicode=true&characterencoding=gb2312</value>
  
  </parameter>
  
  <parameter>
  
  <name>driverclassname</name>
  
  <value>com.mysql.jdbc.driver</value>
  
  </parameter>
  
  <parameter>
  
  <name>maxidle</name>
  
  <value>10</value>
  
  </parameter>
  
  <parameter>
  
  <name>username</name>
  
  <value>shopadm</value>
  
  </parameter>
  
  </resourceparams>
  
  这里的参数和上一种方法中添加到server.xml里的信息几乎是完全一样的。
  
  2.在对应程序的web-inf下建立一个web.xml文档,添加如下信息:
  
  <?xml version="1.0" encoding="iso-8859-1"?>
  
  <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
  
  xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
  
  xsi:schemalocation="http://java.sun.com/xml/ns/j2ee
  
  http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
  
  version="2.4">
  
  <resource-ref>
  
  <description>db connection</description>
  
  <res-ref-name>jdbc/mysql</res-ref-name>
  
  <res-type>javax.sql.datasource</res-type>
  
  <res-auth>container</res-auth>
  
  </resource-ref>
  
  </web-app>

扫描关注微信公众号