Tej*_*jal 12 java mysql hibernate connection-pooling hikaricp
我Log4j
在我的应用程序中使用的配置文件中编写了以下属性当我运行项目时.
我正在关注message.does意味着在我的项目中配置连接池?如果不是那么它将如何?
INFO:internal.ConnectionProviderInitiator - HHH000130:实例化显式连接提供程序:com.zaxxer.hikari.hibernate.HikariConnectionProvider
我也提到了以下链接
hibernate.datasource.driver-class-name=com.mysql.jdbc.Driver
hibernate.datasource.url=jdbc:mysql://localhost:3306/mydb
hibernate.datasource.username=root
hibernate.datasource.password=root
Run Code Online (Sandbox Code Playgroud)
hibernate.hikari.dataSource.url=jdbc:mysql://localhost:3306/mydb
hibernate.hikari.idleTimeout=10
hibernate.hikari.maximumPoolSize=30
hibernate.hikari.minimumIdle=15
hibernate.connection.provider_class=com.zaxxer.hikari.hibernate.HikariConnectionProvider
hibernate.hikari.dataSourceClassName=com.mysql.jdbc.jdbc2.optional.MysqlDataSource
Run Code Online (Sandbox Code Playgroud)
众所周知,MySQL 数据源在网络超时支持方面存在问题。请改用 jdbcUrl 配置。
您需要删除以下行,Hikari 会找到驱动程序
hibernate.datasource.driver-class-name=com.mysql.jdbc.Driver
Run Code Online (Sandbox Code Playgroud)
jdbcUrl 此属性指示 HikariCP 使用“基于 DriverManager”的配置。我们认为基于 DataSource 的配置(上图)更优越
还可以尝试在使用Hibernate4时按照建议添加以下内容:
Run Code Online (Sandbox Code Playgroud)hibernate.hikari.dataSource.url=jdbc:mysql://localhost/database hibernate.hikari.dataSource.user=bart hibernate.hikari.dataSource.password=51mp50n
首先,由于maximum <minimumIdle,配置不一致。这些值最多应设置为相同的值。
hibernate.hikari.maximumPoolSize=10
hibernate.hikari.minimumIdle=10
Run Code Online (Sandbox Code Playgroud)
如果池正在工作,您应该会看到到端口3306的10个ESTABLISHED连接。
netstat -ant | grep 3306
tcp 0 0 127.0.0.1:41722 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:41730 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:41728 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:41726 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:41716 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:41732 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:41720 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:41736 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:41718 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:41724 127.0.0.1:3306 ESTABLISHED
Run Code Online (Sandbox Code Playgroud)
小智 2
您是否尝试过使用该应用程序在数据库中插入/更新某些内容?如果失败了,那么它就不起作用了。
另一种测试方法是将您在此处提供的数据源更改hibernate.hikari.dataSource.url为不存在的数据库。
最后,将其更改<Configuration status="WARN">为<Configuration status="DEBUG">
| 归档时间: |
|
| 查看次数: |
5239 次 |
| 最近记录: |