当ORACEL关闭再次重新启动的时候,Spring连接数据库报错socket write error,提示Already closed
通过Spring配置连接数据库
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${base.jdbc.driverClassName}" />
<property name="url" value="${base.jdbc.url}" />
<property name="username" value="${base.jdbc.username}" />
<property name="password" value="${base.jdbc.password}" />
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="lobHandler" ref="lobHandler"></property>
<property name="mappingDirectoryLocations">
<list>... </list>
</property>
<!-- Hibernate属性文件 -->
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${base.hibernate.dialect}</prop>
<prop key="hibernate.show_sql">false</prop>
<prop key="hibernate.format_sql">false</prop>
<prop key="jdbc.fetch_size">true</prop>
<prop key="jdbc.batch_size">true</prop>
<prop key="hibernate.query.factory_class">org.hibernate.hql.ast.ASTQueryTranslatorFactory</prop>
</props>
</property>
</bean>
报错:
ERROR: org.hibernate.util.JDBCExceptionReporter - Io 异常: Software caused connection abort: socket write error
ERROR: org.hibernate.util.JDBCExceptionReporter - Already closed.
ERROR: org.hibernate.util.JDBCExceptionReporter - Already closed.
请问这个问题如何解决呢?
感觉是DB重新启动后,JAVA工程失去了对DB的连接会话。除非重新启动TOMCAT,工程重新加载。否则就报错。