我开发基于apache tomcat 6.0.26,apache cxf 2.2.7,spring 3.0,hibernate 3.3和sybase sqlanywhere 11的web服务。我使用SYBASE jconn.jar Version 6中的最新JDBC驱动程序。
持久层基于spring + hibernate dao,连接是通过JNDI datasoure(META-INF目录)配置的。
似乎在较长时间不活动时,将关闭从Web服务到数据库的连接。
异常:java.sql.SQLException:JZ0C0:连接已关闭。
答案 0 :(得分:4)
默认情况下,SQL Anywhere将在四小时后关闭非活动连接。要更改此设置,您可以在连接字符串中指定IdleTimeout=x
(或Idle=x
),其中x
是连接关闭之前的分钟数(0 =从不)。或者,您可以使用-ti x
开关重置服务器上的默认设置 - 再次,x
只需几分钟。