下面我将详细讲解“详解在springboot中使用Mybatis Generator的两种方式”的完整攻略。
一、前置条件
在使用Mybatis Generator之前,我们需要先满足以下几个前置条件:
- 安装Maven和JDK,在此不再赘述;
- 在项目中引入依赖
mybatis-generator-core
和mysql-connector-java
,可以在pom.xml
中进行以下配置:
<dependencies>
<!-- mybatis-generator依赖 -->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.7</version>
</dependency>
<!--mysql驱动依赖-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.19</version>
</dependency>
</dependencies>
二、方式一:使用插件生成Mapper
1. 添加Mybatis Generator插件
在pom.xml
文件中加入以下配置:
<build>
<plugins>
<!-- MyBatis Generator 插件 -->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.7</version>
<configuration>
<!--插件所需配置参数-->
</configuration>
<executions>
<execution>
<id>Generate MyBatis Artifacts</id>
<phase>deploy</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
<!--插件配置结束-->
</plugins>
</build>
2. 配置Mybatis Generator插件
在maven
插件mybatis-generator-maven-plugin
中进行配置:
<configuration>
<!--配置数据库基本信息-->
<driverClass>com.mysql.jdbc.Driver</driverClass>
<connectionURL>jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC</connectionURL>
<userId>root</userId>
<password>xxxxxx</password>
<!--指定表,tableName就是指定你要生成的表的名字,可以多个,用“,”分开与<table>配置仅需使用一种-->
<tableNames>user,role</tableNames>
<!--指定生成文件的目录,以targetProject为首路径-->
<targetProject>src/main/java</targetProject>
<!--指定的根包名-->
<targetPackage>com.example.demo.entity</targetPackage>
<!--启用或禁用注释,默认启用-->
<commentGenerator>
<property name="suppressAllComments" value="false"/>
</commentGenerator>
<!--生成类型-->
<generatorConfigurations>
<!--通用mybatis模板-->
<generatorConfiguration>
<!-- xml格式 -->
<property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>
<!-- java格式 -->
<property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>
</generatorConfiguration>
</generatorConfigurations>
</configuration>
3. 运行插件
配置完成后,就可以执行以下maven
命令了:
mvn mybatis-generator:generate
运行完后,就可以在对应的文件夹中看到生成的Mapper文件。
方式二:使用Java代码生成Mapper
首先,定义一个Generator
类,实现Mybatis Generator
接口org.mybatis.generator.api.MyBatisGenerator
,具体实现过程可以参考以下代码:
public class Generator implements MyBatisGenerator {
private List<Context> contexts;
@Override
public void generate(
null,
ProgressCallback progressCallback,
List<GeneratedJavaFile> javaFiles,
List<GeneratedXmlFile> xmlFiles,
List<String> warnings) throws InterruptedException, SQLException, IOException {
try {
ConfigurationParser cp = new ConfigurationParser(warnings);
Configuration config = cp.parseConfiguration(new File("generatorConfig.xml"));
DefaultShellCallback callback = new DefaultShellCallback(true);
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
myBatisGenerator.generate(progressCallback, contexts, javaFiles, xmlFiles, warnings);
System.out.println("生成Mapper成功!");
System.out.println("Success");
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
public void setContexts(List<Context> contexts) {
this.contexts = contexts;
}
}
然后,我们需要在maven
的pom.xml
中引入依赖mybatis-generator-core
:
<dependencies>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.7</version>
</dependency>
</dependencies>
接着,在main
方法中编写以下代码:
public static void main(String[] args) {
List<String> warnings = new ArrayList<String>();
boolean overwrite = true;
String genCfg = "generatorConfig.xml";
File configFile = new File(genCfg);
ConfigurationParser cp = new ConfigurationParser(warnings);
Configuration config;
try {
config = cp.parseConfiguration(configFile);
DefaultShellCallback callback = new DefaultShellCallback(overwrite);
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
myBatisGenerator.generate(null);
System.out.println("生成Mapper成功!");
} catch (IOException e) {
e.printStackTrace();
} catch (XMLParserException e) {
e.printStackTrace();
} catch (InvalidConfigurationException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
配置完成后,就可以运行Java代码生成Mapper文件了。
以上就是在Spring Boot中使用Mybatis Generator的两种方式的详细攻略,希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解在springboot中使用Mybatis Generator的两种方式 - Python技术站