用dblink 衔接的远程库,间隔一段时后履行时报下面毛病Io 异常: End of TNS data channel; nested exception is java.sql.SQLException: Io 异常: End of TNS data channel ,如果重启服后务问题就消逝(但间隔一段时光还会涌现),如不重启每交履行还会接着报 org.springframework.dao.DataAccessResourceFailureException: StatementCallback; SQL [select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"fdlqn" type,"全年量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0)/10000 val from born_plandayear@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="90001" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"fdl1" type,"#1全年量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0)/10000 val from born_plandayear@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="10001" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"fdl2" type,"#2全年量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0)/10000 val from born_plandayear@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="20001" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"fdl3" type,"#3全年量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0)/10000 val from born_plandayear@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="30001" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"fdl4" type,"#4全年量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0)/10000 val from born_plandayear@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="40001" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"ncydl" type,"年已用量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0)/10000 val from born_plandayear@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="90193" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"nhml" type,"年耗量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0) val from born_plandayear@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="90022" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"ccmhn" type,"存量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0) val from born_plandayear@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="90134" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"ccmhr" type,"存量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0) val from born_planday@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="90134" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"rhmlr" type,"日耗量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0) val from born_planday@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="90022" union select to_char(sysdate-1,"yyyy-mm-dd") bsrq,"rfdlr" type,"日量" lb,t.plan_xh,t.plan_cdmc,nvl(t.plan_data,0)/10000 val from born_planday@sctj t where t.plan_date=to_date(to_char(sysdate-1,"yyyy-mm-dd"),"yyyy-mm-dd") and t.plan_xh="90001" ]; Io 异常: End of TNS data channel; nested exception is java.sql.SQLException: Io 异常: End of TNS data channel at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:253) at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72) at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:406) at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:455) at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:463) at org.springframework.jdbc.core.JdbcTemplate.queryForList(JdbcTemplate.java:494) at org.springframework.jdbc.core.simple.SimpleJdbcTemplate.queryForList(SimpleJdbcTemplate.java:234) at com.hzj.portal.common.dao.impl.BaseDaoImpl.findMultiColumnAllList(BaseDaoImpl.java:276) at com.inverteddata.dao.impl.AutoZbDataDAOImpl.SendValues(AutoZbDataDAOImpl.java:468) at com.inverteddata.dao.impl.AutoZbDataDAOImpl.insertDate(AutoZbDataDAOImpl.java:432) at com.inverteddata.service.impl.AutoZbDataServiceImpl.getZbata(AutoZbDataServiceImpl.java:34) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) at $Proxy80.getZbata(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273) at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:264) at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:86) at org.quartz.core.JobRunShell.run(JobRunShell.java:202) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529) Caused by: java.sql.SQLException: Io 异常: End of TNS data channel at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146) at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255) at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:806) at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1031) at oracle.jdbc.driver.T4CStatement.executeMaybeDescribe(T4CStatement.java:830) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1124) at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:1264) at com.mchange.v2.c3p0.impl.NewProxyStatement.executeQuery(NewProxyStatement.java:35) at org.springframework.jdbc.core.JdbcTemplate$1QueryStatementCallback.doInStatement(JdbcTemplate.java:440) at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:395) ... 28 more