mysql自动生成雪花id mysql 代码自动生成工具_mysql自动生成mapper

mybatis-geneator 是一款 mybatis 自动代码生成工具,MyBatis 属于半自动化的 ORM 框架,需要手动书写 Mapping 映射文件,mybatis-gennerator 可以帮助我们自动生成 mybatis 所需要的 Model、Dao、mapper xml 文件。

mybatis-geneator 有如下几种使用方式:

命令行

Java 程序

Maven 插件

Eclipse 插件

Ant 方式

不管哪种方式,核心都需要一个配置文件 generatorConfig.xml,该文件包含了连接数据库参数;生成的 Model、Dao、Mapper 目标路径;指定数据库表;类型的转换处理等配置,以下为generatorConfig.xml内容示例:

/p>
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
location="E:\java_tfd\apache-maven-3.2.5-bin\repository\mysql\mysql-connector-java\5.1.47\mysql-connector-java-5.1.47.jar"/>
userId="root" password="123456">
targetProject="E:\huatec\product\hiot\v2\workspace\hiov\core\src\main\java">
targetProject="E:\huatec\product\hiot\v2\workspace\hiov\core\src\main\resources">
targetProject="E:\huatec\product\hiot\v2\workspace\hiov\core\src\main\java">
enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">

说明:

数据库驱动可以通过上面 classPathEntry ->location 指定本地驱动 jar 文件位置,也可以直接在项目中引入 jar 依赖。就可以省略该 classPathEntry ->location 配置

上面生成 Model、Dao、Mapper 的目录 targetProject 我直接指定的相对路径(相对项目的根目录),也可以使用本地绝对路径(路径一定要写对,否则无法生成代码文件)

生成代码文件的最终路径是 targetProject + targetPackage

一个数据库表对应一个,所以可以同时指定多个

下面就命令行、Java 程序、Maven 插件三种运行方式进行展开讲解。其他方式参见官方文档:http://www.mybatis.org/generator/

一、命令行

首先下载 Mybatis-Generator jar 包,可以到这个地址下载:https://github.com/mybatis/generator/releases ,这里我下载mybatis-generator-core-1.3.5.jar

接着,将mybatis-generator-core-1.3.5.jar 和 generatorConfig.xml放在同一个目录下

mysql自动生成雪花id mysql 代码自动生成工具_mysql自动生成mapper_02

最后,在该目录打开命令行,执行如下命令

java -jar mybatis-generator-core-1.3.5.jar -configfile generatorConfig.xml -overwrite

如果执行完提示:MyBatis Generator finished successfully. 则在该目录下的 target 下相应目录就可以看到生成的文件了。

二、Java 程序

1、配置文件

创建 Java 项目,将上述generatorConfig.xml 复制到项目目录,修改 3 个 targetProject 为:src\target\java src\target\resources src\target\java

2、启动程序代码

新建 GeneratorSqlmap.java 文件,内容如下:

public class GeneratorSqlmap {
public static void main(String[] args) throws Exception {
try {
GeneratorSqlmap generatorSqlmap = new GeneratorSqlmap();
generatorSqlmap.generator();
} catch (Exception e) {
e.printStackTrace();
}
}
public void generator() throws Exception {
List warnings = new ArrayList();
boolean overwrite = true;
File configFile = new File("src\\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);
// 输出 warning 日志
warnings.forEach(System.out::println);
}
}

说明:上述代码只需要根据 generatorConfig.xml 的实际路径修改其引用路径即可

3、Jar 包依赖

将下载好的mybatis-generator-core-1.3.5.jar加入项目依赖(可参见:IDEA Java 项目添加本地 Jar 包)

4、生成文件目录

新建 target 目录,其下新建 java 和 resources 包。最终项目目录结构见下图:

mysql自动生成雪花id mysql 代码自动生成工具_xml_03

说明:相关目录根据实际情况修改调整。

5、执行 main 方法

执行 GeneratorSqlmap 中的 main 方法即可生成代码文件

mysql自动生成雪花id mysql 代码自动生成工具_mysql自动生成雪花id_04

三、Maven 程序

pom.xml 加入 mybatis-generator-maven-plugin,如下:

org.mybatis.generator

mybatis-generator-maven-plugin

1.3.7

${basedir}/src/main/resources/generator/generatorConfig.xml

true

true

当然数据库驱动依赖是必须的,这里不再列出。

将 generatorConfig.xml 放在指定目录下,按实际情况修改 targetProject 生成路径。

刷新 maven,再执行:

mvn mybatis-generator:generate

或者,IDEA 下直接点击执行:

mysql自动生成雪花id mysql 代码自动生成工具_xml_05

即可