C3PO连接池配置及其详解



一、配置

       
       
       
    3   
     
       
    30   
     
       
    1000   
     
       
    false   
     
       
    Test   
     
       
    false   
     
       
    100   
     
       
       
     
       
    null   
     
       
    false   
     
       
    60   
     
       
    3   
     
       
    60   
     
       
    15   
     
       
    100   
     
       
       
     
       
    3   
     
       
    root   
     
       
    password   
     
       
       
     
       
    select id from test where id=1   
     
       
    300   
     
       
    false   
     
       
    true   
     
       
    root   
     
       
    false 
     
    con_test   
    30000   
    30   
    10   
    30   
    25   
    10   
    0   
       
   
   
   
   
       
    200   
       
    300   
   
   
   
   
   

 二、实现

c3p0的实现


全局使用c3p0
1. server.xml中GlobalNamingResources
description="DB Connection"
driverClass="org.gjt.mm.mysql.Driver"
maxPoolSize="10"
minPoolSize="2"
acquireIncrement="2"
name="jdbc/mysql1"
user="root"
password="xxxxxx"
factory="org.apache.naming.factory.BeanFactory"
type="com.mchange.v2.c3p0.ComboPooledDataSource"
jdbcUrl="jdbc:mysql://localhost:3306/noticemanager?characterEncoding=UTF-8&useUnicode=TRUE&autoReconnect=true" />

2. context.xml中ResourceLink

3. web.xml

Tomcat Datasource
jdbc/mysql1
javax.sql.DataSource
Container

4.Hibernate中的配置


"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">



5
100
1800
100


org.hibernate.dialect.MySQLDialect


jdbc:mysql://localhost:3306/noticemanager



java:comp/env/jdbc/mysql1

root
xxxxxxxxx
true

JDBC实现:与DateSource相同

try {
Context ctx = new InitialContext();
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/mysql1");
conn = ds.getConnection();
} catch (NamingException e) {
e.printStackTrace();
return null;

} catch (SQLException e) {
e.printStackTrace();
return null;
}

你可能感兴趣的:(C3PO连接池配置及其详解)