Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java SpringJDBC模板行映射器未设置对象中的所有值_Java_Spring_Oracle_Tomcat - Fatal编程技术网

Java SpringJDBC模板行映射器未设置对象中的所有值

Java SpringJDBC模板行映射器未设置对象中的所有值,java,spring,oracle,tomcat,Java,Spring,Oracle,Tomcat,我正在使用SpringJDBC模板从oracle数据库检索400条记录。 之后,我使用行映射器将行转换为对象。对象中的某些值没有任何值。当我在pl/sql编辑器中测试相同的sql时,我能够看到所有行和行的所有列。当我调试应用程序时,我发现下面的错误。若我为同一个查询获取的记录数(7)较少,那个么它工作正常。行映射器正在为对象设置所有值。你能帮我一下吗 java.sql.SQLException: statement handle not executed 2017-02-09 15:45:39

我正在使用SpringJDBC模板从oracle数据库检索400条记录。 之后,我使用行映射器将行转换为对象。对象中的某些值没有任何值。当我在pl/sql编辑器中测试相同的sql时,我能够看到所有行和行的所有列。当我调试应用程序时,我发现下面的错误。若我为同一个查询获取的记录数(7)较少,那个么它工作正常。行映射器正在为对象设置所有值。你能帮我一下吗

java.sql.SQLException: statement handle not executed

2017-02-09 15:45:39 INFO  XmlBeanDefinitionReader:317 - Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
2017-02-09 15:45:39 INFO  SQLErrorCodesFactory:126 - SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase, Hana]
2017-02-09 15:45:39 WARN  SQLErrorCodesFactory:227 - Error while extracting database product name - falling back to empty error codes
org.springframework.jdbc.support.MetaDataAccessException: Error while extracting DatabaseMetaData; nested exception is java.sql.SQLException: Connection has already been closed.
    at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:305)
    at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:329)
    at org.springframework.jdbc.support.SQLErrorCodesFactory.getErrorCodes(SQLErrorCodesFactory.java:214)
    at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.setDataSource(SQLErrorCodeSQLExceptionTranslator.java:134)
    at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.<init>(SQLErrorCodeSQLExceptionTranslator.java:97)
    at org.springframework.jdbc.support.JdbcAccessor.getExceptionTranslator(JdbcAccessor.java:99)
    at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:645)
    at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:680)
    at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:707)
    at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:757)
    at org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate.query(NamedParameterJdbcTemplate.java:192)
java.sql.SQLException:未执行语句句柄
2017-02-09 15:45:39信息XMLBean定义阅读器:317-从类路径资源[org/springframework/jdbc/support/sql error codes.XML]加载XMLBean定义
2017-02-09 15:45:39信息SQLErrorCodesFactory:126-加载的SQLErrorCodes:[DB2、Derby、H2、HSQL、Informix、MS-SQL、MySQL、Oracle、PostgreSQL、Sybase、Hana]
2017-02-09 15:45:39警告SQLErrorCodesFactory:227-提取数据库产品名称时出错-返回空错误代码
org.springframework.jdbc.support.MetaDataAccessException:提取数据库元数据时出错;嵌套异常为java.sql.SQLException:连接已关闭。
位于org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:305)
位于org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:329)
位于org.springframework.jdbc.support.SQLErrorCodesFactory.getErrorCodes(SQLErrorCodesFactory.java:214)
位于org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.setDataSource(SQLErrorCodeSQLExceptionTranslator.java:134)
位于org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator。(SQLErrorCodeSQLExceptionTranslator.java:97)
位于org.springframework.jdbc.support.jdbccessor.getExceptionTranslator(jdbccessor.java:99)
位于org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:645)
位于org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:680)
位于org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:707)
位于org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:757)
位于org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate.query(NamedParameterJdbcTemplate.java:192)

如果从数据库中检索这400行需要一些时间,我假设您正在点击数据库连接超时。如果是这样,如果您正在使用资源池,请增加
connectionTimeout
。调试代码时也可能发生超时


也可能是超时在数据库端。在这种情况下,您必须调整DB timeout参数。

嵌套的关于连接已关闭的SQLException提示代码或可能的配置问题。请使用不起作用的代码进行更新。