在spring的配置文件中配置c3p0和在hibernate的配置文件中配置c3p0有什么区别?
我最近在学习如何配置struts2+spring+hibernate,其中数据库连接池使用c3p0,一开始在hibernate.cfg.xml中添加c3p0连接的信息如下
<property name="hibernate.connection.provider_class">
org.hibernate.c3p0.internal.C3P0ConnectionProvider
</property>
<property name="hibernate.c3p0.max_size">20</property>
<property name="hibernate.c3p0.min_size">5</property>
<property name="hibernate.c3p0.timeout">50000</property>
<property name="hibernate.c3p0.max_statements">100</property>
<property name="hibernate.c3p0.idle_test_period">3000</property>
<!-- 当连接池耗尽并接到获得连接的请求,则新增加连接的数量 -->
<property name="hibernate.c3p0.acquire_increment">2</property>
然后找网上的帖子,发现很多c3p0都是配置在spring的配置文件中的,如:
<!-- 采用c3p0数据源 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close">
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/hibernate2" />
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<property name="user" value="root" />
<property name="password" value="root" />
<!-- 配置数据库连接池,最大连接数 -->
<property name="maxPoolSize" value="20" />
<!-- 配置数据库连接池,最小连接数 -->
<property name="minPoolSize" value="1" />
<!-- 指定数据库连接池的初始化连接数 -->
<property name="initialPoolSize" value="1" />
<!-- 指定数据库连接池的连接的最大空闲时间 -->
<property name="maxIdleTime" value="10" />
</bean>
这两个有什么关系呢?是一个意思?配置了一个地方另一个地方就不用配置了吧?
这些配置起的作用都是一样的,如果使用spring管理,写在哪里都是一样的。hibernate可以脱离spring框架独立使用的,这个时候就不能配置在 spring里面了
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
你好,我是AI助理
可以解答问题、推荐解决方案等
评论
全部评论 (0)