1. Hibernate 默认连接池
<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration ...">
<hibernate-configuration>
<session-factory >
<!—JDBC 驱动程序 -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<!-- 连接数据库的 URL-->
<property name="connection.url">jdbc:mysql://localhost:3306/schoolproject </property>
<!-- 连接的登录名 -->
<property name="connection.username">root</property>
<!— 登录密码 -->
<property name="connection.password"></property>
<!-- 指定连接的语言 -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!-- 映射 Student 这个资源 -->
<mapping resource="com/wqbi/model/pojo/student.hbm.xml" /> </session-factory>
</hibernate-configuration>
2 .C3P0 连接配置
//spring+hibernate
1.下载c3p0
2.导入包
3.配置c3p0 数据库连接池
4在Spring中配置直接把<datasource>改为c3p0的配置就可以了
如下:
<bean id="DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="oracle.jdbc.driver.OracleDriver"></property>
<property name="jdbcUrl" value="jdbc:oracle:thin:@192.168.1.3:1521:HZORA6"></property>
<property name="user" value="hz1001"></property>
<property name="password" value="123"></property>
<property name="maxPoolSize" value="40"></property>
<property name="minPoolSize" value="1"></property>
<property name="initialPoolSize" value="1"></property>
<property name="maxIdleTime" value="20"></property>
</bean>
以下的<SessionFactory>配置,只需要引用<DataSource>bean就可以了
<bean id="SessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
基本配置参数:
initialPoolSize:
Number of Connections a pool will try to acquire upon startup. Should be between minPoolSize and maxPoolSize
连接池初始化时获取的链接数,介于minPoolSize和maxPoolSize之间
minPoolSize:
Minimum number of Connections a pool will maintain at any given time.
最小链接数
maxPoolSize:
Maximum number of Connections a pool will maintain at any given time.
最大连接数
acquireIncrement:
Determines how many connections at a time c3p0 will try to acquire when the pool is exhausted.
在当前连接数耗尽的时候,一次获取的新的连接数
maxIdleTime:
Seconds a Connection can remain pooled but unused before being discarded. Zero means idle connections never expire.
最大空闲的时间,单位是秒,无用的链接再过时后会被回收
3.proxool 连接池
//hibernate
1先写 proxool 的配置文件,文件名:proxool.xml(一般放在与 hibernate.cfg.xml 文件在同一个目录中)
本例配置的是 MYSQL 数据库,数据库的名字为 schoolproject
<?xml version="1.0" encoding="UTF-8"?>
<!-- the proxool configuration can be embedded within your own application's. Anything outside the "proxool" tag is ignored. --> <something-else-entirely>
<proxool>
<!-- 连接池的别名 -->
<alias>DBPool</alias>
<!--proxool 只能管理由自己产生的连接 -->
<driver-url>jdbc:mysql://localhost:3306/schoolproject?useUnicode=true&characterEncoding=UTF8 </driver-url>
<!—JDBC 驱动程序 -->
<driver-class>com.mysql.jdbc.Driver</driver-class>
<driver-properties>
<property name="user" value="root"/>
<property name="password" value=""/>
</driver-properties>
<!-- proxool 自动侦察各个连接状态的时间间隔 ( 毫秒 ), 侦察到空闲的连接就马上回收 , 超时的销毁 -->
<house-keeping-sleep-time>90000</house-keeping-sleep-time> <!-- 指因未有空闲连接可以分配而在队列中等候的最大请求数 , 超过这个请求数的用户连接就不会被接受 -->
<maximum-new-connections>20</maximum-new-connections> <!-- 最少保持的空闲连接数 -->
<prototype-count>5</prototype-count>
<!-- 允许最大连接数 , 超过了这个连接,再有请求时,就排在队列中等候,最大的 等待请求数由 maximum-new-connections 决定 -->
<maximum-connection-count>100</maximum-connection-count>
<!-- 最小连接数 -->
<minimum-connection-count>10</minimum-connection-count> </proxool>
</something-else-entirely>
//spring+hibernate
<bean id="dataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource">
<property name="driver"><value>${driver}</value></property>
<property name="jdbcUrl"><value>${read.jdbcUrl}</value></property>
<property name="user"><value>${read.user}</value></property>
<property name="password"><value>${read.password}</value></property>
<property name="minPoolSize"><value>10</value></property>
<property name="maxPoolSize"><value>30</value></property>
<property name="initialPoolSize"><value>10</value></property>
<property name="maxIdleTime"><value>28000</value></property>
<property name="idleConnectionTestPeriod"><value>28000</value></property>
</bean>
4 . JNDI 连接池
数据源已经由应用服务配置好 ( 如 Web 服务器 ) , Hibernate 需要做的只是通过 JNDI 名查找到此数据源。应用服务器将连接池对外显示为 JNDI 绑定数据源,它是 javax.jdbc.Datasource 类的一个实例。只要配置一个 Hibernate 文件,如:
hibernate.connection.datasource=java:/comp/env/jdbc/schoolproject //JNDI 名
hibernate.transaction.factory_class = org.hibernate.transaction.JTATransactionFactory
hibernate.transaction.manager_loopup_class =
org.hibernate.transaction.JBossTransactionManagerLookup
hibernate.dialect=org.hibernate.dialect.MySQLDialect
分享到:
相关推荐
12.4.2 配置数据库连接池 12.4.3 使用JNDI 12.5 使用Hibernate的工具快速生成映射文件和POJO 12.5.1 使用MiddleGen根据数据库产生映射文件 12.5.2 使用hbm2java根据映射文件产生POJO 12.6 整合Struts、Spring和...
连接池配置文件 博文链接:https://yanghaiskys.iteye.com/blog/215424
struts2+HIbernate+Spring整合所需jar包 包含数据库连接池jar包 hibernate注解所需jar包 日志处理log4j及slf日志框架及实现的jar包
(2)运用struts1.2+hibernate+spring 框架,数据库连接池,事务管理; (3)Struts 应用国际化,Struts 标签库与Tiles框架, JSTL标签库,Spring IOC; (4)采用优化性能技术,采用oscache缓存,freemarker静态页面生成; (5)...
资源包括hibernate Sql server2005连接池配置源码,及sqlserverjdbc.jar jTDS3.jar jtds-1.2.jar ojdbc14.jar proxool-0.9.0RC3.jar 等jar包,希望能帮大家一些忙
在网上看到框架整合druid连接池的不多,所以自己就做了这个完整框架整合druid连接池供大家参考学习
NULL 博文链接:https://devsky.iteye.com/blog/1038804
本项目采用当前主流的MVC和IOC框架spring 3、优秀的ORM框架hibernate和超级厉害的proxool数据库连接池。这个工程demo,是本人在企业应用中的项目缩影,绝对实用于企业的应用。 适合朋友: 1.一直用单独的servlet和...
Hibernate2和Hibernate3连接池配置.doc
proxool-0.9.1(my).jar 包是我修改了proxool-0.9.1后的jar包,修改后可以完全支持spring配置,并添加了charSet配置属性,用于配置数据库链接的设置默认字符集,并且解决了proxool数据库连接池报如下错误的问题:...
通过整合网上分散资源,集成Spring3.03,Hibernate3,连接池c3p0,实现helloword小例子,和简单的登录功能。框架解释清晰,分享出来,后期持续更新。
里面有目前的流行的前台springmvc框架,持久化层采用hibernate,安全方面采用shiro框架,页面风格采用bootstrap,同时里面还集成了javamelody监控,ehcache缓存机制,druid连接池管理,以及spring事务管理,spring...
框架整合Spring MVC3.23+Spring3.23+Hibernate4.2.3+Activiti5.16.3,三层架构dao,service,controller,使用proxool连接池(已配置好监听器),默认链接mysql数据库。可根据项目开发需要,做适当修改,各项配置齐全...
其中SPINRG的数据连接池是配置在当前系统用户根目录下eg:C:\Users\Administrator\DBInfo\application.properties 具体配置如下:(如果使用别的数据库只更改数据配置和驱动即可) DB.url=jdbc:oracle:thin:@localhost:...
包含整合后的sshjar包 外还有 json 连接池 poi等工具jar包