问题描述: 用mybatis generator生成代码后,执行查询语句时,Oracle里的Date类型字段只精确到年月日。
出现问题的原因:
mybatis中时间类型的区别:
jdbcType = DATE 时, 为 年月日
jdbcType = TIMESTAMP , 为年月日+ 时分秒
解决方法:
oracle数据库中参数类型date不变,mybatis generator生成的xml文件中字段类型修改,将时间的jdbcType类型从“DATA”修改成"TIMESTAMP" 就可以。(原先默认生成时是jdbcType="DATE")。
另外,自动生成xml文件中jdbcType 是否必须的问题
实际使用时, 没有加jdbcType 正常,但是当传入字段值为null时,会报错,所以在xml文件中需要加上jdbcType。
如果有写的不对的地方,请大家多多批评指正,非常感谢!