日期:2014-05-16 浏览次数:20435 次
问题:?Hibernate Cannot release connection
????系统采用Spring MVC 2.5 + Spring 2.5 + Hibernate 3.2架构,其中数据源连接池采用的是Apache commons DBCP。问题是这样的,系统运行一段时间后(大致每隔8小时),访问系统会出现如下错误,再次访问恢复正常。
????造成Cannot release connection的原因有很多,要具体问题具体分析。从异常分析,造成这个异常org.hibernate.exception.GenericJDBCException: Cannot release connection 归根结底是?Caused by: java.sql.SQLException: Already closed.?即连接已关闭。所以解决的办法就要从DBCP的参数配置入手,见下面的参数配置properties文件。
####?::?Apache?DBCP?::?####
?jdbc.driverClassName?=?oracle.jdbc.driver.OracleDriver
?jdbc.url?=?jdbc:oracle:thin:@?10.165?.?153.9?:?1521?:PRDC
?jdbc.username?=?guser
?jdbc.password?=guser?
?#初始化连接
?jdbc.initialSize?=?0?
?#连接池的最大活动个数
?jdbc.maxActive?=?20?
?#没有人用连接的时候,最大闲置的连接个数。