[main] TRACE o.springframework.jdbc.core.StatementCreatorUtils - Setting SQL statement parameter value: column index 4, parameter value [null], value class [null], SQL type unknown [main] DEBUG o.springframework.jdbc.core.StatementCreatorUtils - JDBC getParameterType call failed - using fallback method instead: java.sql.SQLException: Parameter metadata not available for the given statement
有用过jdbctemplate 工具 *** 作过数据库的道友,估计或多或少都见过这个日志,单看打印的日志,很明显是因为在我们执行insert或update语句时某些字段的值为null了,且没有特别配置jdbc的对应properties属性,以至于jdbc底层又想处理你的值而又不知道你的值类型;
细心的道友会发现这是debug级别的日志,但如果一次 *** 作的字段比较多是会引起会话的游标数量不够用且报异常的(这个我会在下次文章中介绍)。
这里粘贴一下上述打印日志的底层方法:
org.springframework.jdbc.core.StatementCreatorUtils#setNull
解决方案新建一个配置文件(若没有),且必须命名为 spring.properties,文件中加入如下配置:
spring.jdbc.getParameterType.ignore=true
至此即可解决上述问题,当然还可有其他解决方式,下回介绍。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)