解决IDEA中多模块下Mybatis逆向工程不生成相应文件的情况

首先Mybatis工程中配置文件需要放在resources包下:

解决IDEA中多模块下Mybatis逆向工程不生成相应文件的情况_第1张图片

在配置文件中需要注意两点:

1.配置数据库连接的jar包,要使用绝对路径,其他配置和之前不是多模块的情况一样:

2.配置对应生成文件的所在目录时,也要使用绝对路径:

解决IDEA中多模块下Mybatis逆向工程不生成相应文件的情况_第2张图片

接下编写逆向工程启动类

其中指定逆向工程配置文件时,要使用绝对路径:

import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.internal.DefaultShellCallback; 
import java.io.File;
import java.util.ArrayList;
import java.util.List; 
public class MyGenerator { 
  private void generator() throws Exception{ 
    List warnings = new ArrayList<>();
    boolean overwrite = true;
    //指定 逆向工程配置文件
    File configFile = new File("D:\\masterSpring\\code\\SpringBoot\\mini-video-dev\\mybatis-generator-config\\src\\main\\resources\\generatorConfig.xml");
    ConfigurationParser cp = new ConfigurationParser(warnings);
    Configuration config = cp.parseConfiguration(configFile);
    DefaultShellCallback callback = new DefaultShellCallback(overwrite);
    MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config,
        callback, warnings);
    myBatisGenerator.generate(null);
  } 
  public static void main(String[] args) throws Exception {
    try {
      MyGenerator generatorSqlmap = new MyGenerator();
      generatorSqlmap.generator();
    } catch (Exception e) {
      e.printStackTrace();
    } 
  }
}

然后运行启动类即可。

总结:

mybatis的逆向工程实现起来其实是非常简单的,但是在不同情况下,要特别注意文件路径的问题,我遇到的问题基本都是路径问题,因为相关代码都是在官方文档中copy过来的,所以需要我们注意的就是路径的问题了。

补充:Mac下mybatis逆向工程运行成功却没有生成相应的包和文件-解决办法

折腾了好久,慢慢试着改路径,才发现:

mac下路径是./src

windows 路径是.\src

记录一下吧。。。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

你可能感兴趣的:(解决IDEA中多模块下Mybatis逆向工程不生成相应文件的情况)