关于MyBatis-Plus公共字段自动填充的坑(涉及多数据源

2022-06-22 00:00:00 mybatis

关于MyBatis-Plus公共字段自动填充的坑(涉及多数据源)

感谢大佬
https://www.cnblogs.com/stephen-java/p/11247020.html

情况是:我自己分包配置的springboot多数据源,springboot还在学习阶段,根据官网的配置:
https://mp.baomidou.com/guide/auto-fill-metainfo.html
可以debug看到输出的SQL语句有自动填充字段,但是数值一直是NULL。sout在
MyMetaObjectHandler 感觉这个class根本进不去,控制台没有输出sout内容,我就觉得一定是我的MyMetaObjectHandler 写的有问题。一个字一个字的对官网例子,又查了很多资料都快放弃了。才发现配置多数据源的对话部分要设置handler。

 MybatisSqlSessionFactoryBean mybatisPlus = new MybatisSqlSessionFactoryBean();
    //加载数据源
    mybatisPlus.setDataSource(dataSource);
    
    //全局配置
    GlobalConfig globalConfig  = new GlobalConfig();
    //配置填充器
    globalConfig.setMetaObjectHandler(new MetaObjectHandler());
    mybatisPlus.setGlobalConfig(globalConfig);

之后MyMetaObjectHandler 有sout输出,按照官网去做就OK了。感觉还是个人技能不行,配置多数据源的时候代码都是抄的。
这个提供一个mark给需要的人。
有路过的大佬可以告诉我,分包配置springboot多数据源,和AOP动态配置有什么区别吗?
当然MyBatis-Plus官网也有动态配置数据源的包,但是个人觉得不习惯,MyBatis-Plus需要在service里@DS指定数据源,我觉得指定数据源最好在mapper层就应该结束掉。不应该在逻辑部分还要关心我用的哪个数据库。分包实现呢,就直接实例我的实体类就好啦,在配置多数据源的时候是哪个数据库已经封装好了,写逻辑的时候就只关心逻辑就好啦。
有路过的大佬可以告诉我,分包配置springboot多数据源,和AOP动态配置有什么区别吗?

    原文作者:Fansj91
    原文地址: https://blog.csdn.net/qq_36296358/article/details/105190600
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。

相关文章