springBoot+mybatis-plus实现监听mysql数据库的数据增删改

 更新时间:2024年01月29日 10:54:36   作者:flymorningbird  
mybatis-plus技术是简化了繁琐的代码操作,把增删改查的语句都内置了,直接调用就可以实现数据库的增删改查了,这篇文章主要给大家介绍了关于springBoot+mybatis-plus实现监听mysql数据库数据增删改的相关资料,需要的朋友可以参考下

在Spring Boot + MyBatis-Plus中实现MySQL数据增删改的监听,可以通过以下步骤:

1. 添加MyBatis-Plus依赖,在pom.xml文件中添加以下依赖:

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>${mybatis-plus.version}</version>
</dependency>

2. 配置MyBatis-Plus,通常在application.yml文件中进行配置:

mybatis-plus:
  # 数据库类型
  db-type: mysql
  # 实体扫描,多个package用逗号或者分号分隔
  typeAliasesPackage: com.example.entity
  # 加载自定义的Mybatis XML映射文件
  mapperLocations: classpath:/mapper/**/*.xml
  # 是否开启SQL打印
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    map-underscore-to-camel-case: true

3. 创建监听器类,实现com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor接口。 

@Component
public class DataChangeInterceptor implements ISqlParser {

    @Override
    public void parser(MetaObject metaObject) {
        MappedStatement mappedStatement = (MappedStatement) metaObject.getValue("delegate.mappedStatement");
        String sql = mappedStatement.getSqlSource().getBoundSql(metaObject).getSql();
        // 处理SQL语句,检测是否为对指定表进行的增删改操作
        // 如果是,则发送通知给应用程序
    }
}

4. 在MyBatis-Plus配置中添加拦截器。 

@Configuration
public class MybatisPlusConfig {

    @Autowired
    private DataChangeInterceptor dataChangeInterceptor;

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(dataChangeInterceptor);
        return interceptor;
    }
}

5. 对需要进行监听操作的实体类添加@TableLogic注解,启用逻辑删除功能。

@Data
@TableName("user")
public class User {

    @TableId(type = IdType.AUTO)
    private Long id;

    private String name;
    
    @TableLogic
    private Integer deleted;
}

以上就是使用Spring Boot + MyBatis-Plus实现MySQL数据增删改的监听的基本步骤。需要注意的是,如果不使用逻辑删除功能,则无法检测到数据删除操作。

总结

到此这篇关于springBoot+mybatis-plus实现监听mysql数据库数据增删改的文章就介绍到这了,更多相关mybatis-plus监听mysql增删改内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java读取文件里面部分汉字内容乱码的解决方案

    java读取文件里面部分汉字内容乱码的解决方案

    这篇文章主要介绍了java读取文件里面部分汉字内容乱码的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • Java中Calendar类的一些常用方法小结

    Java中Calendar类的一些常用方法小结

    项目当中,我们经常会涉及到对时间的处理,Date类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但更推荐使用 Calendar 类进行时间和日期的处理,这篇文章主要给大家介绍了关于Java中Calendar类的一些常用方法,需要的朋友可以参考下
    2021-11-11
  • mybatis实现增删改查_动力节点Java学院整理

    mybatis实现增删改查_动力节点Java学院整理

    本文通过实例代码给大家介绍了mybatis实现增删改查功能,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-09-09
  • Maven发布项目 (jar包) 到Nexus私服中的操作

    Maven发布项目 (jar包) 到Nexus私服中的操作

    这篇文章主要介绍了Maven发布项目 (jar包) 到Nexus私服中的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • MyBatis-Generator的配置说明和使用

    MyBatis-Generator的配置说明和使用

    本文主要介绍了MyBatis-Generator的配置说明和使用的相关知识。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • java反射机制给实体类相同字段自动赋值实例

    java反射机制给实体类相同字段自动赋值实例

    这篇文章主要介绍了java反射机制给实体类相同字段自动赋值实例,具有
    2020-08-08
  • Java使用JXLS导出Excel详解

    Java使用JXLS导出Excel详解

    jxls是一个轻量级的Java库,用于基于模板的Excel报表生成,这篇文章主要为大家介绍了Java如何使用JXLS导出Excel,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-11-11
  • Spring bean 四种注入方式详解

    Spring bean 四种注入方式详解

    这篇文章主要介绍了Spring bean的实例化和IOC依赖注入详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2021-07-07
  • SpringBoot+MyBatis-Plus+Dynamic-Datasource读写分离完整指南

    SpringBoot+MyBatis-Plus+Dynamic-Datasource读写分离完整指南

    在SpringBoot项目中,使用MyBatis-Plus和Dynamic-Datasource实现读写分离是一种常见且高效的架构选择,下面就来详细介绍一下SpringBoot读写分离,感兴趣的可以了解一下
    2025-11-11
  • resultMap标签中里的collection标签详解

    resultMap标签中里的collection标签详解

    这篇文章主要介绍了resultMap标签中里的collection标签,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02

最新评论