BAE hibernate c3p0数据库连接池

时间:2022-06-22 14:07:16

根据BAE官方文档:bae是不支持连接池的,但今天试验却能实现hibernate c3p0连接池,避免mysql连接超时

hibernate主配置文件hibernate.cfg.xml代码

<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration>
<session-factory> <property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
<property name="connection.url">jdbc:mysql://sqld.duapp.com:4050/数据库名</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.username">用户名(Access Key ID)</property>
<property name="connection.password">密码(Secret Access Key)</property> <!--C3P0配置 -->
<!-- c3p0在我们使用的Hibernate版本中自带,不用下载,直接使用 -->
<property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider
</property>
<property name="hibernate.c3p0.max_size">50</property>
<property name="hibernate.c3p0.min_size">5</property>
<property name="hibernate.c3p0.timeout">10</property>
<property name="hibernate.c3p0.max_statements">50</property>
<property name="hibernate.c3p0.idle_test_period">10</property>
<property name="hibernate.c3p0.acquire_increment">2</property> <!-- 二、其他配置 -->
<property name="show_sql">true</property>
<property name="format_sql">false</property> <!-- create: 先删表,再建表。 create-drop: 启动时建表,退出前删表。 update: 如果表结构不一致,就创建或更新。
validate: 启动时验证表结构,如果不致就抛异常。 -->
<property name="hibernate.hbm2ddl.auto">update</property> <!-- 三、导入映射配置文件 -->
<mapping resource="cn/neil/bean/WeightInfoBean.hbm.xml" /> </session-factory>
</hibernate-configuration>

进入mysql admin 输入 show processlist;即可看出数据库开了多少连接,

BAE hibernate c3p0数据库连接池

可见连接池已经创建成功。