mybatis generator 覆盖xml文件
Posted wulm
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis generator 覆盖xml文件相关的知识,希望对你有一定的参考价值。
mybatis generator默认采用追加方式生成,所以我们如果要重新生成代码的时候那么要先删除原来的文件。
解决办法:
1:创建一个自定义补丁类。
OverwriteXmlPlugin.java
package com.my.common.generator; import java.util.List; import org.mybatis.generator.api.GeneratedXmlFile; import org.mybatis.generator.api.IntrospectedTable; import org.mybatis.generator.api.PluginAdapter; /** * @author wulm * @date 2018年10月26日 下午7:39:45 * @version 1.0.0 */ public class OverwriteXmlPlugin extends PluginAdapter { @Override public boolean sqlMapGenerated(GeneratedXmlFile sqlMap, IntrospectedTable introspectedTable) { sqlMap.setMergeable(false); return super.sqlMapGenerated(sqlMap, introspectedTable); } @Override public boolean validate(List<String> warnings) { return true; } }
说明:原理是重写sqlMapGenerated方法。设置sqlMap.setMergeable(false);。默认情况下isMergeable为true,所以在这里设置为false。
2:在generator.xml中的context节点下加上
<!-- 覆盖xml文件 -->
<plugin
type="com.my.common.generator.myplugins.OverwriteXmlPlugin" />
当你再次执行的时候就会覆盖原来的xml了。
另外如果想要覆盖原来的java文件,建议使用java代码来生成代码,请参考官网:http://mbg.cndocs.ml/running/runningWithJava.html(使用XML配置文件从Java运行MBG),代码里面设置
boolean overwrite = true;即可
以上是关于mybatis generator 覆盖xml文件的主要内容,如果未能解决你的问题,请参考以下文章
MyBatis generator配置 overwrite 文件覆盖失效
怎样利用 eclipse mybatis generator 自动生成代码
ssm实战------pom.xml文件 和 mybatis-generator