MyBatis逆向工程基本操作及代码实例

作者:viewts 时间:2022-12-19 04:09:27 

回想一下MyBatis的基本操作,它需要实体类,自定义mapper接口以及mapper.xml配置文件。为了避免繁琐的工作量,MyBatis Generator,简称MBG,可自动生成框架所需的这些依赖,同时支持基本的CRUD操作,但是需要注意,MBG一般不要重复执行,否则会出问题。

下面是引入MBG的基本操作:

一、新建maven项目,引入依赖:


<dependencies>
 <dependency>
   <groupId>org.mybatis</groupId>
   <artifactId>mybatis</artifactId>
   <version>3.5.5</version>
 </dependency>

<dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>8.0.20</version>
 </dependency>

<dependency>
   <groupId>org.mybatis.generator</groupId>
   <artifactId>mybatis-generator-core</artifactId>
   <version>1.4.0</version>
 </dependency>
</dependencies>

二、创建mbg配置文件:


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
   PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
   "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

<generatorConfiguration>
 <context id="testMBG" targetRuntime="MyBatis3">
   <!-- 连接池 -->
   <jdbcConnection
       driverClass="com.mysql.cj.jdbc.Driver"
       connectionURL="jdbc:mysql://localhost:3306/demo"
       userId="root"
       password=""
   ></jdbcConnection>
   <!-- 配置JavaBean生成策略 -->
   <javaModelGenerator targetPackage="com.wts.entity" targetProject="./src/main/java"></javaModelGenerator>
   <!-- 配置SQL映射文件生成策略 -->
   <sqlMapGenerator targetPackage="com.wts.entity" targetProject="./src/main/java"></sqlMapGenerator>
   <!-- 配置Mapper接口的生成策略 -->
   <javaClientGenerator targetPackage="com.wts.entity" targetProject="./src/main/java"></javaClientGenerator>
   <table tableName="user" domainObjectName="User"></table>
 </context>
</generatorConfiguration>

三、运行Generator:


public class MyTest {
 public static void main(String[] args) {
   List<String> warnings = new ArrayList<>();
   File configFile = new File(MyTest.class.getResource("generatorConfig.xml").getFile());
   ConfigurationParser configurationParser = new ConfigurationParser(warnings);
   Configuration configuration = null;
   try {
     configuration = configurationParser.parseConfiguration(configFile);
   } catch (IOException e) {
     e.printStackTrace();
   } catch (XMLParserException e) {
     e.printStackTrace();
   }
   DefaultShellCallback callback = new DefaultShellCallback(true);
   MyBatisGenerator myBatisGenerator = null;
   try {
     myBatisGenerator = new MyBatisGenerator(configuration, callback, warnings);
   } catch (InvalidConfigurationException e) {
     e.printStackTrace();
   }
   try {
     myBatisGenerator.generate(null);
   } catch (SQLException e) {
     e.printStackTrace();
   } catch (IOException e) {
     e.printStackTrace();
   } catch (InterruptedException e) {
     e.printStackTrace();
   }
 }
}

这都是固定写法,了解一下即可。

来源:https://www.cnblogs.com/viewts/p/13213865.html

标签:MyBatis,逆向,工程
0
投稿

猜你喜欢

  • 深入同步访问共享的可变数据分析

    2023-05-08 00:16:49
  • C# Dictionary的使用实例代码

    2021-07-29 14:02:02
  • Java利用POI实现导入导出Excel表格示例代码

    2023-05-15 03:02:19
  • Hibernate中load方法与get方法的区别

    2021-07-18 09:32:16
  • C# WinForm 判断程序是否已经在运行,且只允许运行一个实例,附源码

    2021-11-06 14:10:07
  • Android自定义GestureDetector实现手势ImageView

    2023-12-18 05:16:35
  • java信号量控制线程打印顺序的示例分享

    2023-05-09 12:27:38
  • Spring Boot 应用的热部署配置方法

    2022-03-26 23:36:56
  • C# Word 类库的深入理解

    2023-07-21 07:29:09
  • java 中同步、异步、阻塞和非阻塞区别详解

    2023-06-21 19:26:07
  • C#操作windows系统进程的方法

    2023-06-09 05:11:45
  • 详解SpringBoot和SpringBatch 使用

    2023-08-17 19:00:38
  • Android Application级别自定义Toast

    2022-01-02 03:41:45
  • Java 通过反射给实体类赋值操作

    2023-11-26 10:11:41
  • c#委托详解和和示例分享

    2022-10-26 12:29:41
  • SpringBoot实现单文件与多文件上传功能

    2023-03-22 23:44:11
  • 总结的5个C#字符串操作方法分享

    2022-08-10 04:02:01
  • JAVA实现基于Tcp协议的简单Socket通信实例

    2022-07-07 21:44:36
  • java使用HashMap实现斗地主(有序版)

    2021-08-30 10:24:10
  • 常用的Java数据结构知识点汇总

    2022-09-09 02:26:02
  • asp之家 软件编程 m.aspxhome.com