当前使用版本(必填,否则不予处理)

3.3.1

该问题是如何引起的?(确定最新版也有问题再提!!!)

insertFill updateFill 方法不执行

重现步骤(如果有就写完整)

MyBatis-Plus MetaObjectHandler 不生效

报错信息

1、无报错信息,类可以加载,log.info("MyBatisHandler starter"); 可以打印出来 insertFill updateFill 方法不执行

2、MyBatisHandler 是在web工程里面

dao mapper 是在 service里面 service通过 dubbo暴露接口给web层调用,web层才能获取登录的用户

Comment From: yangyang0507

你的 Web 层依赖在上,而 MP 是作用在 DAO 层的,无法取到你 Web 层的 Handler,建议你将 MyBatisHandler 抽离到 common 包或者 infrastructure 包,由 dao 层引入。 至于你说的 web 层才能获取登录用户,建议自己维护一个上下文,用 ThreadLocal 存储一份用户信息。

Comment From: qmdx

up

Comment From: wangjia2016

你的 Web 层依赖在上,而 MP 是作用在 DAO 层的,无法取到你 Web 层的 Handler,建议你将 MyBatisHandler 抽离到 common 包或者 infrastructure 包,由 dao 层引入。 至于你说的 web 层才能获取登录用户,建议自己维护一个上下文,用 ThreadLocal 存储一份用户信息。

最终自己写了个切面,调用接口的时候 手动给字段赋值了