錯誤信息:
Could not set parameters for mapping: ParameterMapping{property='goodsImgId', mode=IN, javaType=class java.lang.Object, jdbcType=null, numericScale=null, resultMapId='null', jdbcTypeName='null', expression='null'}. Cause: org.apache.ibatis.type.TypeException: Error setting non null for parameter #1 with JdbcType null . Try setting a different JdbcType for this parameter or a different configuration property. Cause: java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).
sql語句:
@Insert("INSERT INTO goodsimg(goodsImgId,goodsImgName) VALUE ('#{goodsImgId}','#{goodsImgName}');")
解決方法:
方法一:注釋問題,無注釋,排除 方法二:添加類型,#{goodsImgId,jdbcType=VARCHAR},無用 方法三:錯誤原因,手賤給參數添加單引號
正確:@Insert("INSERT INTO goodsimg(goodsImgId,goodsImgName) VALUE (#{goodsImgId},#{goodsImgName});")
錯誤:@Insert("INSERT INTO goodsimg(goodsImgId,goodsImgName) VALUE ('#{goodsImgId}','#{goodsImgName}');")
ps:正常的sql添加語句時,也要添加單引號,所以之前測試sql語句時,測試不出錯誤,手賤啊。