使用MP的自动填充出现问题
博主最近刚刚学习了MP,在使用了代码生成器后,在增加数据操作的时候,想试用自动填充,没报异常,但是没用出现自动注入
博主使用mybatis版本是 MyBatis3.1.0,自动填充按照官方文档提示使用,
- 在实体类上使用@TableField,并用fill属性指定自动填充策略
- 自定义实现类MetaObjectHandler中的insertFill(MetaObject )和updateFill(MetaObject )方法,
特别注意,自定义类的时候要将该类注入spirng容易中,使用@Component注解,或者在mybtisplus的注解类上使用@Bean注入,推荐使用第一种,比较简单。
博主在这种情况下还出现了mybatis自动注入失效,
通过debug追踪发现内容出了异常,mybatisplus内部自己处理了该异常,所以没有察觉到出现出现异常-------博主这里出现的是类型转化异常
MP代码生成器使用的是LocalDateTime,而自己自动注入的时候,使用的是
java.sql.Timestamp
将实体类中的类型修改为java.sql.Timestamp即解决了该问题。
希望该方案了帮助到你解决问题,如果你出现了该类型的其他问题,建议通过debug方式来调试,而不是通过日志来调试,如果你不会debug,花点时间就很容易学会了,多调试几次就习惯了。