Hibernate 4.3.6+ HikariCP实现

时间:2015-04-14 20:57:15

标签: java spring hibernate maven hikaricp

我正在尝试在Netbeans的maven java ee web应用程序中使用HikariCP和Hibernate。这是我第一次使用Hibernate,我还没有使用Spring,因为我对它不熟悉,但未来可能会考虑它(请随时提供我应该调整它的原因)。

在HikariCP维基中,它提到:

  

从Hibernate 4.3.6开始,有一个官方的ConnectionProvider类   来自Hibernate,应该用来代替HikariCP   实现。这个班叫    org.hibernate.hikaricp.internal.HikariCPConnectionProvider。

然后继续描述Hibernate 4.x的配置。它讨论了那里的旧ConnectionProvider类,所以我假设这部分已经过时了?

我已将以下依赖项添加到我的POM.XML文件中:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-hikaricp</artifactId>
    <version>4.3.8.Final</version>
</dependency>

并在hibernate.cfg.xml中的标记内声明了以下属性:

<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.provider_class">org.hibernate.hikaricp.internal.HikariCPConnectionProvider</property>
<property name="hibernate.hikari.dataSource.url">jdbc:mysql://localhost/testdb?zeroDateTimeBehavior=convertToNull</property>
<property name="hibernate.hikari.dataSource.user">testuser</property>
<property name="hibernate.hikari.dataSource.password">password</property>
<property name="hibernate.hikari.dataSourceClassName">com.mysql.jdbc.jdbc2.optional.MysqlDataSource</property> 
<property name="hibernate.hikari.dataSource.cachePrepStmts">true</property>
<property name="hibernate.hikari.dataSource.prepStmtCacheSize">250</property>
<property name="hibernate.hikari.dataSource.prepStmtCacheSqlLimit">2048</property>
<property name="hibernate.hikari.dataSource.useServerPrepStmts">true</property>
<property name="hibernate.current_session_context_class">thread</property>

我可以像以前一样使用默认的Hibernate连接池与数据库进行交互。这就是我需要做的吗?它现在使用HikariCP连接池吗?如果没有,还需要其他配置?

如果我以后要集成Spring,这将如何影响HikariCP配置或配置位置?

0 个答案:

没有答案