ava.lang.Thread.run(Thread.java:745)
Caused by: java.sql.SQLException: Fail to convert to internal representation
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:113)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:147)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:209)
at oracle.jdbc.driver.CharCommonAccessor.getByte(CharCommonAccessor.java:209)
at oracle.jdbc.driver.OracleResultSetImpl.getByte(OracleResultSetImpl.java:464)
at com.alibaba.druid.pool.DruidPooledResultSet.getByte(DruidPooledResultSet.java:129)
at org.springframework.jdbc.support.JdbcUtils.getResultSetValue(JdbcUtils.java:154)
at org.springframework.jdbc.core.BeanPropertyRowMapper.getColumnValue(BeanPropertyRowMapper.java:311)
at org.springframework.jdbc.core.BeanPropertyRowMapper.mapRow(BeanPropertyRowMapper.java:249)
at org.springframework.jdbc.core.RowMapperResultSetExtractor.extractData(RowMapperResultSetExtractor.java:93)
at org.springframework.jdbc.core.RowMapperResultSetExtractor.extractData(RowMapperResultSetExtractor.java:60)
at org.springframework.jdbc.core.JdbcTemplate$1QueryStatementCallback.doInStatement(JdbcTemplate.java:460)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:405)java
看異常信息中的OracleResultSetImpl.getByte,此條堆棧信息是的描述的是數據庫查出的數據轉換爲 Byte 類型時失敗。spring
經檢查數據庫表結果中的字段類型及實體類中定義的數據類型。發如今實體類中的app_type 定義爲Varchar類型,而數據庫中對應的字段爲 byte 類型。所以致使數據庫在進行映射時發生異常。sql
問題處理步驟總結:
一、經過異常信息查找對應的錯誤字段(好比此例中的getByte);
二、逐一對照實體類Byte 類型和數據庫中該字段的類型。
三、確認轉換關係是否對應,調整數據庫字段類型或實體類字段類型;數據庫