Tomcat 连接池配置

Tomcat6.0连接池配置
  1.配置tomcat下的conf下的context.xml文件,在之间添加连接池配置: 
1.    <Resource name="jdbc/oracle"
2.           auth="Container"   
3.           type="javax.sql.DataSource"   
4.           driverClassName="oracle.jdbc.driver.OracleDriver "   
5.           url=" jdbc:oracle:thin:@host:port:databse"   
6.           username=" user "   
7.           password="password"   
8.           maxActive="100"   
9.           maxIdle="30"   
10.           maxWait="10000" />   
2.配置你的应用下的web.xml中的之间加入:
1.    <resource-ref>   
2.        <description>DB Connection</description>   
3.        <res-ref-name>jdbc/oracle</res-ref-name>   
4.        <res-type>javax.sql.DataSource</res-type>   
5.        <res-auth>Container</res-auth>   
6.      </resource-ref>   
3.把连接数据库的第三方驱动放到common/lib下面就ok了
4.测试程序我就不写了

Tomcat5.5x连接池配置

方式一、全局数据库连接池
1、通过管理界面配置连接池,或者直接在tomcat\conf\server.xml的GlobalNamingResources中增加
<Resource name="jdbc/mydb" type="javax.sql.DataSource" password="mypwd" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" maxIdle="2" maxWait="5000" validationQuery="select 1" username="sa" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb" maxActive="4"/>
2、在tomcat\webapps\myapp\META-INF\context.xml的Context中增加:
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
这样就可以了。
方式二、全局数据库连接池
1、同上
2、在tomcat\conf\context.xml的Context中增加:
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
方式三、局部数据库连接池
只需在tomcat\webapps\myapps\META-INF\context.xml的Context中增加:
<Resource name="jdbc/mydb" type="javax.sql.DataSource" password="mypwd" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" maxIdle="2" maxWait="5000" validationQuery="select 1" username="sa" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb" maxActive="4"/>
参数说明:
driveClassName:JDBC驱动类的完整的名称; 
maxActive:同时能够从连接池中被分配的可用实例的最大数; 
maxIdle:可以同时闲置在连接池中的连接的最大数; 
maxWait:最大超时时间,以毫秒计; 
password:用户密码; 
url:到JDBC的URL连接; 
user:用户名称; 
validationQuery:用来查询池中空闲的连接。
以上三种方式在tomcat 5.5.4下都可以。另外,sql server的jdbc driver是从微软网站上下载的sql server jdbc (sp3)。

tomcat5.0连接池配置
在tomcat 的下面路径(Tomcat \conf\Catalina\localhost)下建一个xml文件,内容如下
 <Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource"/>
    <ResourceParams name="jdbc/test">
        <parameter>
            <name>factory</name>
            <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
        </parameter>
        <!-- Maximum number of dB connections in pool. Make sure you
             configure your mysqld max_connections large enough to handle
             all of your db connections. Set to 0 for no limit.
             -->
        <parameter>
            <name>maxActive</name>
            <value>100</value>
        </parameter>
        <!-- Maximum number of idle dB connections to retain in pool.
             Set to 0 for no limit.
             -->
        <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.
             -->
        <parameter>
            <name>maxWait</name>
            <value>10000</value>
        </parameter>
        <!-- MySQL dB username and password for dB connections  -->
        <parameter>
            <name>username</name>
            <value>sa</value>
        </parameter>
        <parameter>
            <name>password</name>
            <value>test</value>
        </parameter>
        <!-- Class name for JDBC driver -->
        <parameter>
            <name>driverClassName</name>
            <value>net.sourceforge.jtds.jdbc.Driver</value>
        </parameter>
        <!-- Autocommit setting.  This setting is required to make
             Hibernate work.  Or you can remove calls to commit(). -->
        <parameter>
            <name>defaultAutoCommit</name>
            <value>true</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:jtds:sqlserver://url/filedb;charset=gb2312;autoReconnect=true</value>
        </parameter>
        <!-- Recover abandoned connections -->
        <parameter>
            <name>removeAbandoned</name>
            <value>true</value>
        </parameter>
        <!-- Set the number of seconds a dB connection has been idle 
             before it is considered abandoned. 
             -->
        <parameter>
            <name>removeAbandonedTimeout</name>
            <value>60</value>
        </parameter>
        <!-- Log a stack trace of the code which abandoned the dB 
             connection resources. 
             -->
        <parameter>
            <name>logAbandoned</name>
            <value>true</value>
        </parameter>
    </ResourceParams>
posted @ 2011-06-01 16:34 ﹎"該變ゾ 阅读(57) 评论(0) 编辑
spring配置所作项目的spring常用配置文件,结合hibernate 
1.config.properties文件//配置连接数据库的参数,和Hibernate的一些参数 
Java代码 复制代码 

    #for mysql  
    #jdbc.driver=com.mysql.jdbc.Driver  
    #jdbc.url=jdbc:mysql://localhost:3306/***?useUnicode=true&characterEncoding=GBK  
    #jdbc.username=root  
    #jdbc.password=123  
    #hibernate.dialect=org.hibernate.dialect.MySQLDialect  
      
    #for hsqldb  
   9. #jdbc.driver=org.hsqldb.jdbcDriver  
  10. #jdbc.url=jdbc:hsqldb:file:/${***.root}/WEB-INF/data/***  
  11. #jdbc.username=sa  
  12. #jdbc.password=  
  13. #hibernate.dialect=org.hibernate.dialect.HSQLDialect  
  14.   
  15. #for oracle  
  16. jdbc.driver=oracle.jdbc.driver.OracleDriver  
  17. jdbc.url=jdbc:oracle:thin:@192.168.8.***:1521:orcl  
  18. jdbc.username=bmsys2  
  19. jdbc.password=oracle9i  
  20. hibernate.dialect=org.hibernate.dialect.Oracle9Dialect  
  21.   
  22.   
  23. #for sql server  
  24. #jdbc.driver=net.sourceforge.jtds.jdbc.Driver  
  25. #jdbc.url=jdbc:jtds:sqlserver://localhost:1433/***;SelectMethod=cursor;  
  26. #jdbc.username=sa  
  27. #jdbc.password=zhang  
  28. #hibernate.dialect=org.hibernate.dialect.SQLServerDialect  
  29.   
  30. jdbc.maxActive=30  
  31. jdbc.maxIdle=20  
  32. jdbc.maxWait=1000  
  33.   
  34.   
  35. hibernate.show_sql=true  
  36. hibernate.hbm2ddl.auto=  
  37. hibernate.format_sql=true  
  38. hibernate.cache.use_query_cache=false  
  39. hibernate.default_batch_fetch_size=16  

#for mysql 
#jdbc.driver=com.mysql.jdbc.Driver 
#jdbc.url=jdbc:mysql://localhost:3306/***?useUnicode=true&characterEncoding=GBK 
#jdbc.username=root 
#jdbc.password=123 
#hibernate.dialect=org.hibernate.dialect.MySQLDialect 

#for hsqldb 
#jdbc.driver=org.hsqldb.jdbcDriver 
#jdbc.url=jdbc:hsqldb:file:/${***.root}/WEB-INF/data/*** 
#jdbc.username=sa 
#jdbc.password= 
#hibernate.dialect=org.hibernate.dialect.HSQLDialect 

#for oracle 
jdbc.driver=oracle.jdbc.driver.OracleDriver 
jdbc.url=jdbc:oracle:thin:@192.168.8.***:1521:orcl 
jdbc.username=bmsys2 
jdbc.password=oracle9i 
hibernate.dialect=org.hibernate.dialect.Oracle9Dialect 


#for sql server 
#jdbc.driver=net.sourceforge.jtds.jdbc.Driver 
#jdbc.url=jdbc:jtds:sqlserver://localhost:1433/***;SelectMethod=cursor; 
#jdbc.username=sa 
#jdbc.password=zhang 
#hibernate.dialect=org.hibernate.dialect.SQLServerDialect 

jdbc.maxActive=30 
jdbc.maxIdle=20 
jdbc.maxWait=1000 


hibernate.show_sql=true 
hibernate.hbm2ddl.auto= 
hibernate.format_sql=true 
hibernate.cache.use_query_cache=false 
hibernate.default_batch_fetch_size=16 



2.spring-config.xml; //读取config.properties,配置DataSource 
Java代码 复制代码 

   1. <?xml version="1.0" encoding="GBK" ?>  
   2. <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">  
   3. <beans>  
   4.     <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
   5.         <property name="location">  
   6.             <value>/WEB-INF/config.properties</value>  
   7.         </property>  
   8.     </bean>  
   9.     <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">  
  10.         <property name="driverClassName">  
  11.             <value>${jdbc.driver}</value>  
  12.         </property>  
  13.         <property name="url">  
  14.             <value>${jdbc.url}</value>  
  15.         </property>  
  16.         <property name="username">  
  17.             <value>${jdbc.username}</value>  
  18.         </property>  
  19.         <property name="password">  
  20.             <value>${jdbc.password}</value>  
  21.         </property>  
  22.         <property name="maxActive">  
  23.             <value>${jdbc.maxActive}</value>  
  24.         </property>  
  25.         <property name="maxIdle">  
  26.             <value>${jdbc.maxIdle}</value>  
  27.         </property>  
  28.         <property name="maxWait">  
  29.             <value>${jdbc.maxWait}</value>  
  30.         </property>  
  31.     </bean>  
  32. </beans>  

<?xml version="1.0" encoding="GBK" ?> 
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans> 
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
<property name="location"> 
<value>/WEB-INF/config.properties</value> 
</property> 
</bean> 
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> 
<property name="driverClassName"> 
<value>${jdbc.driver}</value> 
</property> 
<property name="url"> 
<value>${jdbc.url}</value> 
</property> 
<property name="username"> 
<value>${jdbc.username}</value> 
</property> 
<property name="password"> 
<value>${jdbc.password}</value> 
</property> 
<property name="maxActive"> 
<value>${jdbc.maxActive}</value> 
</property> 
<property name="maxIdle"> 
<value>${jdbc.maxIdle}</value> 
</property> 
<property name="maxWait"> 
<value>${jdbc.maxWait}</value> 
</property> 
</bean> 
</beans> 



3.spring-hibernate.xml;//配置sessionFactory,transactionManager 
Java代码 复制代码 

   1. <?xml version="1.0" encoding="GBK" ?>  
   2. <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">  
   3. <beans>  
   4.     <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">  
   5.         <property name="dataSource">  
   6.             <ref bean="dataSource" />  
   7.         </property>  
   8.         <property name="mappingResources">  
   9.             <list>  
  10.             <value>com/../*.hbm.xml</value>  
  11.             </list>  
  12.         </property>  
  13.         <property name="hibernateProperties">  
  14.             <props>  
  15.                 <prop key="hibernate.dialect">${hibernate.dialect}</prop>  
  16.                 <prop key="hibernate.cglib.use_reflection_optimizer">true</prop>  
  17.                 <prop key="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</prop>  
  18.                 <prop key="hibernate.show_sql">${hibernate.show_sql}</prop>  
  19.                 <prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop>  
  20.                 <prop key="hibernate.format_sql">${hibernate.format_sql}</prop>  
  21.                 <prop key="hibernate.connection.useUnicode">true</prop>  
  22.                 <prop key="hibernate.cache.use_query_cache">${hibernate.cache.use_query_cache}</prop>  
  23.                 <prop key="hibernate.default_batch_fetch_size">${hibernate.default_batch_fetch_size}</prop>  
  24.             </props>  
  25.         </property>  
  26.     </bean>  
  27.     <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">  
  28.         <property name="sessionFactory">  
  29.             <ref bean="sessionFactory" />  
  30.         </property>  
  31.     </bean>  
  32. </beans>  

<?xml version="1.0" encoding="GBK" ?> 
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans> 
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> 
<property name="dataSource"> 
<ref bean="dataSource" /> 
</property> 
<property name="mappingResources"> 
<list> 
<value>com/../*.hbm.xml</value> 
</list> 
</property> 
<property name="hibernateProperties"> 
<props> 
<prop key="hibernate.dialect">${hibernate.dialect}</prop> 
<prop key="hibernate.cglib.use_reflection_optimizer">true</prop> 
<prop key="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</prop> 
<prop key="hibernate.show_sql">${hibernate.show_sql}</prop> 
<prop key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop> 
<prop key="hibernate.format_sql">${hibernate.format_sql}</prop> 
<prop key="hibernate.connection.useUnicode">true</prop> 
<prop key="hibernate.cache.use_query_cache">${hibernate.cache.use_query_cache}</prop> 
<prop key="hibernate.default_batch_fetch_size">${hibernate.default_batch_fetch_size}</prop> 
</props> 
</property> 
</bean> 
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> 
<property name="sessionFactory"> 
<ref bean="sessionFactory" /> 
</property> 
</bean> 
</beans> 



4.spring-dao.xml;//配置所有Dao 
Java代码 复制代码 

   1. <?xml version="1.0" encoding="GBK" ?>  
   2. <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">  
   3. <beans>  
   4.     <!-- Finance-->  
   5.     <bean id="xxxDao" class="com.xxx.XXXDAOHbm">  
   6.         <property name="sessionFactory">  
   7.             <ref bean="sessionFactory" />  
   8.         </property>  
   9.     </bean>  
  10. </beans>  

<?xml version="1.0" encoding="GBK" ?> 
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans> 
    <!-- Finance--> 
<bean id="xxxDao" class="com.xxx.XXXDAOHbm"> 
<property name="sessionFactory"> 
<ref bean="sessionFactory" /> 
</property> 
</bean> 
</beans> 



5.spring-service.xml;//配置service,声明事务,继承baseTransactionProxy 
Java代码 复制代码 

   1. <?xml version="1.0" encoding="GBK" ?>  
   2. <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">  
   3. <beans>  
   4.     <bean id="baseTransactionProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">  
   5.         <property name="transactionManager" ref="transactionManager" />  
   6.         <property name="transactionAttributes">  
   7.             <props>  
   8.                 <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>  
   9.                 <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>  
  10.                 <prop key="load*">PROPAGATION_REQUIRED,readOnly</prop>  
  11.                 <prop key="create*">PROPAGATION_REQUIRED</prop>  
  12.                 <prop key="update*">PROPAGATION_REQUIRED</prop>  
  13.                 <prop key="delete*">PROPAGATION_REQUIRED</prop>  
  14.                 <prop key="set*">PROPAGATION_REQUIRED</prop>  
  15.                 <prop key="add*">PROPAGATION_REQUIRED</prop>  
  16.                 <prop key="remove*">PROPAGATION_REQUIRED</prop>  
  17.                 <prop key="increase*">PROPAGATION_REQUIRED</prop>  
  18.                 <prop key="init*">PROPAGATION_REQUIRED</prop>  
  19.                 <prop key="back*">PROPAGATION_REQUIRED</prop>  
  20.                 <prop key="*">PROPAGATION_REQUIRED,readOnly</prop>  
  21.             </props>  
  22.         </property>  
  23.     </bean>  
  24.   
  25.     <!-- service implements -->  
  26.     <bean id="XXXService" parent="baseTransactionProxy">  
  27.         <property name="target">  
  28.     <bean class="com.XXX.XXXServiceImpl">  
  29.         <property name="sessionFactory">  
  30.             <ref bean="sessionFactory" />  
  31.         </property>  
  32.         <property name="xxxDao">  
  33.             <ref bean="xxxDao" />//所包含Dao  
  34.         </property>  
  35.         <property name="commonService">  
  36.             <ref bean="otherService" />//所包含service  
  37.         </property>  
  38.              </bean>  
  39.         </property>  
              <property name="proxyTargetClass">  
                 <value>true</value>  
               </property> 
  40.     </bean>  
  41. </beans>  

注意上面要加上 
<property name="proxyTargetClass">  
     <value>true</value>  
</property> 
这段,都则会出错。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值