generatorConfig.xml

92 阅读1分钟
  1. 新建项目
  2. 下载MySQL JDBC驱动(在pom.xml输入下图代码,下载)
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.49</version>
</dependency>
  1. 下载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>

  1. 准备一个数据库的配置文件

image.png

  1. 写对应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
  1. 创建generatorConfig.xml

image.png

  1. 写入代码

对应需要修改生成的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>
  1. 执行命令
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
  1. 生成的对应文件格式如下图

image.png

  1. 一次添加多表只要在配置部分写明即可

image.png

ps:已经添加记得注释删除掉 不然出现的如下图所示

image.png

github项目:Judy-ZhongLin/demo_: some demo including gengeneratorConfig... (github.com)