- 新建项目
- 下载MySQL JDBC驱动(在pom.xml输入下图代码,下载)
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.49</version>
</dependency>
- 下载mybatis-generator
<!--https://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator-core -->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>
- 准备一个数据库的配置文件
- 写对应url地址,想要代码文件存放的地址
可能需要改的内容包括mysql-connector-java的版本,url的网址,端口号,数据库名字,账号,密码,project指代码文件存放的地址
classPath=mysql-connector-java-5.1.49.jar
jdbc_driver = com.mysql.jdbc.Driver
jdbc_url = jdbc:mysql://localhost:3306/music?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
jdbc_user = root
jdbc_password = root
project = D:\A\demo_generate\src\main\java\com\example\demo_generate
- 创建generatorConfig.xml
- 写入代码
对应需要修改生成的mapper接口、Mapper的xml文件和实体类文件的存放位置
<?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>
<!-- 引入配置文件 -->
<properties url="file:///D:/A/demo_generate/src/main/resources/generator.properties"/>
<!-- D:\A\demo_generate\src\main\resources\generator.properties-->
<!-- 指定数据连接驱动jar地址 -->
<classPathEntry location="${classPath}" />
<!-- 一个数据库一个context -->
<context id="infoGuardian">
<!-- 注释 -->
<commentGenerator >
<property name="suppressAllComments" value="true"/><!-- 是否取消注释 -->
<property name="suppressDate" value="false" /> <!-- 是否生成注释代时间戳-->
</commentGenerator>
<!-- jdbc连接 -->
<jdbcConnection driverClass="${jdbc_driver}"
connectionURL="${jdbc_url}" userId="${jdbc_user}"
password="${jdbc_password}" />
<!-- 类型转换 -->
<javaTypeResolver>
<!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short, etc.) -->
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!-- 生成实体类地址 -->
<javaModelGenerator targetPackage="model"
targetProject="${project}" >
<!-- 是否在当前路径下新加一层schema,eg:fase路径com.packetXXX.model, true:com.packetXXX.model.[schemaName] -->
<property name="enableSubPackages" value="false"/>
<!-- 是否针对string类型的字段在set的时候进行trim调用 -->
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!-- 生成mapxml文件 -->
<sqlMapGenerator targetPackage="mapper"
targetProject="${project}" >
<!-- 是否在当前路径下新加一层schema,eg:fase路径mapper, true:mapper.[schemaName] -->
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<!-- 生成mapxml对应client,也就是接口dao -->
<javaClientGenerator targetPackage="mapper"
targetProject="${project}" type="XMLMAPPER" >
<!-- 是否在当前路径下新加一层schema,eg:fase路径com.packetXXX.mapper, true:com.packetXXX.mapper.[schemaName] -->
<property name="enableSubPackages" value="false" />
</javaClientGenerator>
<!-- 配置表信息 -->
<table schema="music" tableName="admin" domainObjectName="Admin" enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="false" enableUpdateByExample="false"></table>
<!-- schema即为数据库名 tableName为对应的数据库表 domainObjectName是要生成的实体类 enable*ByExample是否生成 example类 -->
</context>
</generatorConfiguration>
- 执行命令
java -jar mybatis-generator-core-1.3.5.jar -configfile generatorConfig.xml
扩写后的版本是(需要找到文件对应位置,填补完整后运行)
java -jar C:\Users\21631\.m2\repository\org\mybatis\generator\mybatis-generator-core\1.3.5\mybatis-generator-core-1.3.5.jar -configfile D:\A\demo_generate\src\main\resources\generatorConfig.xml
- 生成的对应文件格式如下图
- 一次添加多表只要在配置部分写明即可
ps:已经添加记得注释删除掉 不然出现的如下图所示
github项目:Judy-ZhongLin/demo_: some demo including gengeneratorConfig... (github.com)