tomcat配置数据库连接池 [摘抄]

来源:互联网 发布:网页布局模板php 编辑:程序博客网 时间:2024/06/04 19:08

使用管理界面配置连接池比改动xml文件安全得多,而且方便快捷。

1.登陆管理界面
http://localhost:8080/admin

密码和用户名在你安装的时候设定的,如果忘记(或没有)的话,去改tomcat/conf/tomcat-users.xml,添加admin和manager两个role,一个用户,该用户的role为admin和manager就可以了,按原有的xml复制修改就可以。

2.设置步骤
   2.1 点击左边框架中Service菜单项左边的小圆,展开列表. 
   2.2 点击左边框架中Host (localhost)菜单项左边的小圆,展开列表. 
   2.3 点击左边框架中你要添加连接池的工作目录的菜单项左边的小圆,展开列表. 
   2.4 点击左边框架中Data Sources蔡单项,右边框架出现设置页。 
   2.5 从右边框架中右上角的Data Source Actions下拉列表中选择create new data source 
   2.6 填写示例:

JNDI Name: jdbc/MyDataSourceData Source URL:jdbc:oracle:thin:@localhost:1521:MyOracleJDBC Driver Class:oracle.jdbc.driver.OracleDriverUser Name:testPassword:test


   2.7 点击右边框架中右上角save按钮 
   2.8 点击顶部框架Commit Changes按钮。 
==============================================================================

打开server.xml文件,在<Host></Host>之间添加下面的内容
<Context path="" docBase="root" debug="5">
 <!-- path和docBase指向你的站点,如你是用了"test"站点,则应填写path="/test",docBase="test"-->
       <!-- 日志,在%TOMCAT_HOME%的logs下生成localhost_mysql_log.txt日志文件 -->

      <Logger className="org.apache.catalina.logger.FileLogger"
                prefix="localhost_mysql_log." suffix=".txt"
                timestamp="true"/>
      <!-- 数据源名称,可以通过java:/comp/env/jdbc/Mysql调用(连接池) -->
      <Resource name="jdbc/Mysql" auth="Container" type="javax.sql.DataSource"/>
       <!-- 数据源参数表 -->
      <ResourceParams name="jdbc/Mysql">
          <parameter>
             <!-- 数据源工厂,通过它得到DataSource 高版本tomcat和低版本不同,这里适用于4.18以后版本-->
           
             <name>factory</name>
             <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
          </parameter>
          <!-- 最大连结数,设置为0则不限制-->
            <parameter>
           <name>maxActive</name>
                    <value>100</value>
               </parameter>

               <!-- 在连结池中保留的连结数 -->
               <parameter>
          <name>maxIdle</name>
                   <value>30</value>
            </parameter>

            <!-- Maximum time to wait for a dB connection to become available
         in ms, in this example 10 seconds. An Exception is thrown if
         this timeout is exceeded.  Set to -1 to wait indefinitely.
          最长等待连接时间,如果设置成-1表示不限制
          -->

               <parameter>
          <name>maxWait</name>
          <value>10000</value>
            </parameter>

      <!-- MySQL dB username and password for dB connections  -->
      <parameter>
       <!--数据库用户名-->
       <name>username</name>
       <value>root</value>
      </parameter>
      <parameter>
      <!--数据库密码-->
       <name>password</name>
       <value>mysql</value>

      </parameter>
      <!-- Class name for the old mm.mysql JDBC driver - uncomment this entry and comment next
          if you want to use this driver - we recommend using Connector/J though
          数据库jdbc名称,为以前版本的驱动

      <parameter>
         <name>driverClassName</name>
         <value>org.gjt.mm.mysql.Driver</value>
   </parameter>
    -->

  
      <!-- Class name for the official MySQL Connector/J driver -->
      <parameter>
         <name>driverClassName</name>
         <value>com.mysql.jdbc.Driver</value>
      </parameter>
  
      <!-- The JDBC connection url for connecting to your MySQL dB.
         The autoReconnect=true argument to the url makes sure that the
         mm.mysql JDBC Driver will automatically reconnect if mysqld closed the
         connection.  mysqld by default closes idle connections after 8 hours.
         -->

      <parameter>
        <name>url</name>
        <value>jdbc:mysql://localhost:3306/test?student?useUnicode=true;characterEncoding=ISO8859-1</value>
    
      </parameter>
     </ResourceParams>
 </Context>


然后将数据库驱动文件拷贝到%tomcat_home%/common/lib文件夹下。
修改文件web.xml,在<web-app></web-app>之间添加


 <description>MySQL Test App</description>
 <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>

原创粉丝点击