框架中無效的列類型異常分析


org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #5 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 無效的列類型
; uncategorized SQLException for SQL []; SQL state [null]; error code [17004]; 無效的列類型; nested exception is java.sql.SQLException: 無效的列類型
    org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:83)
    org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
    org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
    org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:73)
    org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:368)
    $Proxy8.update(Unknown Source)
    org.mybatis.spring.SqlSessionTemplate.update(SqlSessionTemplate.java:254)
    org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:49)
    org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:43)
    $Proxy9.updateWork(Unknown Source)
    com.biz.impl.WorkProjectBizImpl.updateWork(WorkProjectBizImpl.java:51)
    com.controller.WorkProjectController.updateWork(WorkProjectController.java:88)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)

在做sprinmvcg框架和mybatis框架時,遇到以上問題,對該問題進行一個簡單的感悟和總結:
該異常提示無效的列類型。導致的后果是在后面修改的過程中,產生的代理找不到相應
的操作和資源。
總結發現該問題出現的原因有兩種:
第一種:在mybatis映射文件中編寫的sql語句有問題,存在和頁面匹配多余的字段,
使得產生無效的列。
第二種:在修改的jsp頁面中,與mybatis中sql語句,缺少對應的列。

此時的技巧為:如果表中的字段不是很多的時候,可以將表的所有字段顯示在sql語句中
以及jsp頁面中。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM