yangtaoorange 发表于 2013-2-3 14:43:48

请教高手!!定时从sqlserver2008取数据的问题,困惑许久了!!

请教高手!!定时从sqlserver2008取数据的问题,困惑许久了!!我是定时(每隔2s)从sqlserver2008取数据,运行一段时间之后,就报这个错,服务就停止了。

82298841 WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 0,
SQLState: 08S01
82298841 ERROR org.hibernate.util.JDBCExceptionReporter - I/O Error: C
onnection reset
82298841 WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 0,
SQLState: HY010
82298841 ERROR org.hibernate.util.JDBCExceptionReporter - Invalid stat
e, the Connection object is closed.
82298841 WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 0,
SQLState: HY010
82298841 ERROR org.hibernate.util.JDBCExceptionReporter - Invalid stat
e, the Connection object is closed.
Exception in thread "Timer-0" org.hibernate.exception.JDBCConnectionException: c
ould not execute query
      at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.j
ava:99)
      at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelp
er.java:66)
      at org.hibernate.loader.Loader.doList(Loader.java:2536)
      at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2276)
      at org.hibernate.loader.Loader.list(Loader.java:2271)
      at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:452)
      at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.ja
va:363)
      at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java
:196)
      at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1268)
      at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)
      at cn.doconline.sms.dao.SimpleDaoImpl.query(SimpleDaoImpl.java:63)
      at cn.doconline.sms.dao.SimpleDaoImpl$$FastClassByCGLIB$$ec0ba649.invoke
(<generated>)
      at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
      at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocatio
n.invokeJoinpoint(Cglib2AopProxy.java:688)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
ReflectiveMethodInvocation.java:150)
      at org.springframework.transaction.interceptor.TransactionInterceptor.in
voke(TransactionInterceptor.java:110)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterc
eptor.intercept(Cglib2AopProxy.java:621)
      at cn.doconline.sms.dao.SimpleDaoImpl$$EnhancerByCGLIB$$8c403fc6.query(<
generated>)
      at cn.doconline.sms.analyze.engine.MessageReadTask.readMessage(MessageRe
adTask.java:51)
      at cn.doconline.sms.analyze.engine.MessageReadTask.run(MessageReadTask.j
ava:36)
      at java.util.TimerThread.mainLoop(Timer.java:512)
      at java.util.TimerThread.run(Timer.java:462)
Caused by: java.sql.SQLException: I/O Error: Connection reset
      at net.sourceforge.jtds.jdbc.TdsCore.executeSQL(TdsCore.java:1053)
      at net.sourceforge.jtds.jdbc.TdsCore.submitSQL(TdsCore.java:899)
      at net.sourceforge.jtds.jdbc.ConnectionJDBC2.setAutoCommit(ConnectionJDB
C2.java:2259)
      at org.enhydra.jdbc.core.CoreConnection.setAutoCommit(CoreConnection.jav
a:234)
      at org.enhydra.jdbc.standard.StandardXAConnectionHandle.setAutoCommit(St
andardXAConnectionHandle.java:125)
      at org.enhydra.jdbc.standard.StandardXAConnectionHandle.prepareStatement
(StandardXAConnectionHandle.java:287)
      at org.enhydra.jdbc.standard.StandardXAConnectionHandle.prepareStatement
(StandardXAConnectionHandle.java:255)
      at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatch
er.java:534)
      at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatch
er.java:452)
      at org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatc
her.java:161)
      at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1700)
      at org.hibernate.loader.Loader.doQuery(Loader.java:801)
      at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Lo
ader.java:274)
      at org.hibernate.loader.Loader.doList(Loader.java:2533)
      ... 20 more
Caused by: java.net.SocketException: Connection reset
      at java.net.SocketInputStream.read(SocketInputStream.java:168)
      at java.io.DataInputStream.readFully(DataInputStream.java:178)
      at java.io.DataInputStream.readFully(DataInputStream.java:152)
      at net.sourceforge.jtds.jdbc.SharedSocket.readPacket(SharedSocket.java:8
42)
      at net.sourceforge.jtds.jdbc.SharedSocket.getNetPacket(SharedSocket.java
:723)
      at net.sourceforge.jtds.jdbc.ResponseStream.getPacket(ResponseStream.jav
a:466)
      at net.sourceforge.jtds.jdbc.ResponseStream.read(ResponseStream.java:103
)
      at net.sourceforge.jtds.jdbc.ResponseStream.peek(ResponseStream.java:88)

      at net.sourceforge.jtds.jdbc.TdsCore.wait(TdsCore.java:3932)
      at net.sourceforge.jtds.jdbc.TdsCore.executeSQL(TdsCore.java:1046)
      ... 33 more
页: [1]
查看完整版本: 请教高手!!定时从sqlserver2008取数据的问题,困惑许久了!!