我在使用console.log(this)
的配置文件中写入了以下属性
在我的应用程序中运行项目时。
我收到以下消息。这是否意味着在我的项目中配置了连接池?如果没有的话,情况会如何?
信息:internal.ConnectionProviderInitiator-HHH000130:实例化显式连接提供程序:com.zaxxer.hikari.hibernate.HikariConnectionProvider
我也引用了以下链接
Log4j
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
答案 0 :(得分:4)
首先,由于maximum 如果池正在工作,您应该会看到10个建立到端口3306的连接。hibernate.hikari.maximumPoolSize=10
hibernate.hikari.minimumIdle=10
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
答案 1 :(得分:3)
请参阅HikariCP关于MySQL的说明:
众所周知,就网络超时支持而言,MySQL数据源已损坏。改为使用jdbcUrl配置。
您需要删除以下行,Hikari将找到驱动程序
hibernate.datasource.driver-class-name=com.mysql.jdbc.Driver
jdbcUrl 此属性指示HikariCP使用“基于DriverManager的”配置。我们认为基于数据源的配置(上面)是优越的
也请尝试在使用Hibernate4时按照建议添加以下内容:
hibernate.hikari.dataSource.url=jdbc:mysql://localhost/database hibernate.hikari.dataSource.user=bart hibernate.hikari.dataSource.password=51mp50n
答案 2 :(得分:2)
您是否尝试过使用该应用程序在数据库中插入/更新某些内容?如果失败,则无法正常工作。
另一种测试方法是将您在此处提供的数据源hibernate.hikari.dataSource.url
更改为不存在的数据库。
最后,将<Configuration status="WARN">
更改为<Configuration status="DEBUG">