mybatis-generator生成文件覆盖问题的解决

 更新时间:2022年02月09日 09:40:05   作者:小明同鞋  
这篇文章主要介绍了mybatis-generator生成文件覆盖问题的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

mybatis-generator生成文件覆盖

在Idea中使用Mybatis-generator plugin时遇到的问题,我的mybatis配置到的DB的服务中,每次部署微服务时需要install db这个微服务,将其打成jar包,供其他服务引用。

可是发现,我每次install或者package时候,mybatis-generator都会随编译自动运行,导致工程中的的mapper和dao都被冲掉。

解决方案

<configuration>
    <!--配置文件的位置-->
    <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
    <verbose>true</verbose>
    <overwrite>true</overwrite>
</configuration>
<executions>
    <execution>
        <id>Generate MyBatis Artifacts</id>
        <!-- 该配置可避免maven install或者package时候运行该插件,导致本地mapper重新生成 -->
        <phase>deploy</phase>
        <goals>
            <goal>generate</goal>
        </goals>
    </execution>
</executions>
<dependencies>
    <dependency>
        <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-core</artifactId>
        <version>1.3.2</version>
    </dependency>
</dependencies>

官方文档中有如下描述:

The MBG plugin is bound to the generate-sources phase of a Maven build, so it will execute before the compile step. Also note that MBG generates both Java source files and XML resources. The MBG goal will bind both generated Java files and XML resources to the build and they will both be included in any JAR generated by the build.

mybatis-generator避免覆盖自定义的sql方法

编写PersonExtMapper.java 接口文件 编写自定义方法

编写PersonExtMapper.xml 映射文件 配置映射

PersonExtMapper.xml 和PersontMapper.xml(Mybatis生成器生成)的区别

指向各自的Maper接口文件

但相同

当数据库字段发生改变 执行指令mvn -Dmybatis.generator.overwrite=true mybatis-generator:generate 不会覆盖自定义的方法

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java String转换时为null的解决方法

    Java String转换时为null的解决方法

    这篇文章主要介绍了Java String转换时为null的解决方法,需要的朋友可以参考下
    2017-07-07
  • Spring Boot右键maven build成功但是直接运行main方法出错的解决方案

    Spring Boot右键maven build成功但是直接运行main方法出错的解决方案

    这篇文章主要介绍了Spring Boot-右键maven build成功但是直接运行main方法出错的解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • Java使用百度AI接口实现智能机器人对话系统

    Java使用百度AI接口实现智能机器人对话系统

    AI已经在各行各业中广泛应用,助力于各式各样的业务,而在机器人对话中,我们可以通过利用百度AI中的自然语言处理、问答知识图谱等技术,使机器人可以更加智能化、自然化的为用户服务,本文介绍Java利用百度AI接口实现智能机器人对话系统
    2024-01-01
  • SpringBoot开发技巧之如何处理跨域请求CORS

    SpringBoot开发技巧之如何处理跨域请求CORS

    CORS(Cross-Origin Resource Sharing)"跨域资源共享",是一个W3C标准,它允许浏览器向跨域服务器发送Ajax请求,打破了Ajax只能访问本站内的资源限制
    2021-10-10
  • Kotlin传递可变长参数给Java可变参数实例代码

    Kotlin传递可变长参数给Java可变参数实例代码

    这篇文章主要介绍了Kotlin传递可变长参数给Java可变参数实例代码,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • springboot maven plugin报红的解决办法

    springboot maven plugin报红的解决办法

    本文主要介绍了springboot maven plugin报红的解决办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Springboot自定义注解&传参&简单应用方式

    Springboot自定义注解&传参&简单应用方式

    SpringBoot框架中,通过自定义注解结合AOP可以实现功能如日志记录与耗时统计,首先创建LogController和TimeConsuming注解,并为LogController定义参数,然后,在目标方法上应用这些注解,最后,使用AspectJ的AOP功能,通过切点表达式定位这些注解
    2024-10-10
  • 解读SpringMVC 请求参数接收

    解读SpringMVC 请求参数接收

    这篇文章主要介绍了SpringMVC请求参数接收的相关操作,本文通过示例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-07-07
  • idea debug没有force step into的问题解决

    idea debug没有force step into的问题解决

    本文主要介绍了IDEA Debug中ForceStepInto按钮消失的问题及解决方法,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-10-10
  • SpringBoot可视化监控的具体应用

    SpringBoot可视化监控的具体应用

    最近越发觉得,任何一个系统上线,运维监控都太重要了,本文介绍了SpringBoot可视化监控的具体应用,分享给大家,有兴趣的同学可以参考一下
    2021-06-06

最新评论