08
2021
01

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

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


20210108162754.jpg


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

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


20210108162802.jpg


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


20210108162812.jpg


接下编写逆向工程启动类


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


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<String> 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


记录一下吧。。。

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。