mysql 安装java 停止_java-与MySql的连接会自动中止。 如何正确配置Connector / J?

当Java连接到MySQL时,可能会遇到连接超时或断开的问题。不推荐使用`autoReconnect=true`,因为这可能导致会话状态和数据一致性问题。文章介绍了使用c3p0连接池来实现自动重连的配置方法,包括在`hibernate.cfg.xml`中设置参数以及创建`c3p0.properties`文件。如果这些方法无效,还提供了其他可能的解决方案,如修改Hibernate连接提供者或在配置文件中设置属性。
摘要由CSDN通过智能技术生成

我经历了很多解决方案,但问题得到了解决,但一段时间后连接超时或断开连接.2 3天后,我得到了解决我的问题的解决方案。

许多解决方案建议使用autoReconnect = true,但是当我浏览文档时。 我在源代码中看到以下文本描述了autoReconnect参数:

不建议使用此功能,因为它具有与会话状态和数据一致性相关的副作用

当我查看Hibernate代码时。 Hibernate的基本连接机制不支持重新连接,必须使用H3C0连接池(它本身并不总是支持重新连接)。

但是一旦使用过H3C0,默认行为似乎是处理请求,如果连接中断,则用户会看到并出错-但至少会为下一个请求重新连接。 我想一个错误比无限错误要好,但仍然不如零错误。 事实证明,不需要选项testConnectionOnCheckout-该文档不建议这样做,因为在请求之前测试连接可能会导致性能降低。 当然,软件首先必须正常运行,其次它必须快速运行。

因此,总而言之,要获得与“工作”的连接(我定义为通过无错误地重新连接来处理已删除的连接):在“ hibernate.cfg.xml”中:

5

20

1800

50

然后创建一个文件“ c3p0.properties”,该文件必须位于类路径的根目录中(即无法对应用程序的特定部分覆盖它):

c3p0.properties

c3p0.testConnectionOnCheckout = true

如果此解决方案不起作用,那么还有更多可能的解决方案:-

1. Add

org.hibernate.connection.C3P0ConnectionProvider

Also dont forget to place the c3p0-0.9.1.jar in the classpath.

2. Instead of using that c3p0.properties file, couldn't you just use this property in your hibernate.cfg.xml:

true

Also checkout the last post on this page:

https://forum.hibernate.org/viewtopic.php?p=2399313

If all these not work than go [more][1] and read in detail

[1]: http://hibernatedb.blogspot.in/2009/05/automatic-reconnect-from-hibernate-to.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值