当数据库连接池中的连接被创建而长时间不使用的情况下,该连接会自动回收并失效,但客户端并不知道,在进行数据库操作时仍然使用的是无效的数据库连接,这样,就导致客户端程序报“ java.sql.SQLException: Io 异常: Connection reset” 或“java.sql.SQLException 关闭的连接”异常。

在配置数据源后面加上

配置后,客户端在使用一个无效的连接时会先对该连接进行测试,如果发现该连接已经无效,则重新从连接池获取有效数据库连接来使用。

在tomcat的context.xml里面设置数据源时候可参考:

driverClassName="oracle.jdbc.OracleDriver"

type="javax.sql.DataSource"

url="jdbc:oracle:thin:@11.11.11.45:1521:orcl"

name="jdbc/login"

username="login"

password="login"

maxActive="15"

maxIdle="10"

maxWait="-1"

minIdle="2"

removeAbandonedTimeout="5"

testOnBorrow="true"

testWhileIdle="true"

testOnReturn="true"

removeAbandoned="true"

logAbandoned="true"

validationQuery="select 1 from dual"

/>

driverClassName="oracle.jdbc.OracleDriver"

type="javax.sql.DataSource"

url="jdbc:oracle:thin:@11.11.11.44:1521:orcl"

name="jdbc/intraweb"

username="intraweb"

password="intraweb"

maxActive="15"

maxIdle="10"

maxWait="-1"

minIdle="2"

removeAbandonedTimeout="5"

testOnBorrow="true"

testWhileIdle="true"

testOnReturn="true"

removeAbandoned="true"

logAbandoned="true"

validationQuery="select 1 from dual"

/>

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐