tomcat下数据库连接池的配置

来源:互联网 发布:php 调用类的静态方法 编辑:程序博客网 时间:2024/04/28 23:25

tomcat数据库连接池配置
在server.xml中添加到<content>中
<!----------------------------------------------------------------------->
<Resource name="jdbc/smsgroup" scope="Shareable" type="javax.sql.DataSource"/>
         <ResourceParams name="jdbc/smsgroup">
           <parameter>
             <name>maxWait</name>
             <value>10000</value>
           </parameter>
           <parameter>
             <name>maxActive</name>
             <value>100</value>
           </parameter>
           <parameter>
             <name>password</name>
             <value>swt</value>
           </parameter>
           <parameter>
             <name>url</name>
             <value>jdbc:mysql://localhost:3306/smsgroup?autoReconnect=true</value>
           </parameter>
           <parameter>
             <name>driverClassName</name>
             <value>org.gjt.mm.mysql.Driver</value>
           </parameter>
           <parameter>
             <name>maxIdle</name>
             <value>30</value>
           </parameter>
           <parameter>
             <name>username</name>
             <value>swt</value>
           </parameter>
         </ResourceParams>

<!------------------------------------------------------->
在web.xml中添加
 <resource-ref>
     <description>DB Connection</description>
     <res-ref-name>jdbc/smsgroup</res-ref-name>
     <res-type>javax.sql.DataSource</res-type>
     <res-auth>Container</res-auth>
 </resource-ref>
<!---------------------------------------------------->
连接和关闭数据库代码
public void initConnection() {
     //连接池连接数据库
       try{
Context ctx = new InitialContext();
DataSource source = (DataSource)ctx.lookup   ("java:comp/env/jdbc/smsgroup");
Connection con = source.getConnection();
con = source.getConnection();
stmt = con.createStatement();
System.out.println("数据库连接成功!");
    }catch (Exception e) {
e.printStackTrace();
System.out.println("连接数据库失败!");
}
}

<!----------------------------关闭------------------------------->
public void destroyConnection(){
//关闭数据库(连接池)
try {
  if (RS!=null) RS.close();
  if (stmt!=null) stmt.close();
  if (con!=null) con.close();
  System.out.println("数据库成功关闭!");
}
catch(Exception e) {
  System.out.println("数据库繁忙,请按F5刷新页面!");
  e.printStackTrace();
}
}

参考:
1、sql server微软驱动
url格式:jdbc:microsoft:sqlserver://IP地址:1433;DatabaseName=默认数据库名
driverClassName格式:com.microsoft.jdbc.sqlserver.SQLServerDriver
2、Oracle thin驱动
url格式:jdbc:oracle:thin:@IP地址:1521:实例名
driverClassName格式:oracle.jdbc.driver.OracleDriver
3、MySql数据库
url格式:jdbc:mysql://IP地址:3306/smsgroup?autoReconnect=true
driverClassName格式:org.gjt.mm.mysql.Driver
4、JDBC-ODBC
url格式:jdbc:odbc:DNS名
driverClassName格式:sun.jdbc.odbc.JdbcOdbcDriver

原创粉丝点击