多次刷新之后No operations allowed after connection closed.的原因和解决方式

最近使用Mysql操作数据库,在Servlet里面调用之后
出现了No operations allowed after connection closed.问题。
在这里插入图片描述
出现这个问题一般出现在多次刷新页面的情况下面。

使用debug进行错误排查的时候,他的报错是在
pst = con.prepareStatement(sql);
当我把这个变成非静态之后,问题没有解决,最后才定位到Connection

先看看自己是不是把
Connection con
用static 修饰了?

现在来看这个问题的原因:
在对数据库操作结束后关闭连接是正确的做法,没什么大问题。
至于出现:No operations allowed after connection closed。这样的问题原因只有一个

你这里和数据库的连接Connection是一个Static的,程序共享这一个Connection。所以第一 次对数据库操作没问题,当把Connection关闭后,第二次还想操作数据库时Connection肯定不存在了。

(每次开启tomcat后第一次能成功,刷新之后第二次就报了错)


要解决这个问题,只要将自己给Connection设置的static去掉就好了

之后多次刷新就没有什么问题了。

--------------------------------------------------------end------------------------------------

  • 12
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值