springboot2.0入门(九)-- springboot使用mybatis-generator自动代码生成

一、配置文件引入

  1. 插件引入,引入

    <plugin>
                 <groupId>org.mybatis.generator</groupId>
                 <artifactId>mybatis-generator-maven-plugin</artifactId>
                 <version>1.3.2</version>
                 <configuration>
                     <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
                     <overwrite>true</overwrite>
                     <verbose>true</verbose>
                 </configuration>
                 <!-- 配置数据库链接及mybatis generator core依赖 生成mapper时使用 -->
                 <dependencies>
                     <dependency>
                         <groupId>mysql</groupId>
                         <artifactId>mysql-connector-java</artifactId>
                         <version>5.1.34</version>
                     </dependency>
                     <dependency>
                         <groupId>org.mybatis.generator</groupId>
                         <artifactId>mybatis-generator-core</artifactId>
                         <version>1.3.2</version>
                     </dependency>
                 </dependencies>
             </plugin>
  2. 添加数据源,配置包扫描路劲

        # 设置数据源
      spring:
     datasource:
       url: jdbc:mysql://localhost:3306/xf_local/boot_helloword
       username: root
       password: 123456
       # 连接池类型
       type: com.alibaba.druid.pool.DruidDataSource
       # 驱动
       driver-class-name: com.mysql.jdbc.Driver
       # 连接池配置
       druid:
         # 最小数
         min-idle: 5
         # 最大数
         max-active: 20
         # 初始大小
         initial-size: 5
         # 配置获取连接等待超时时间
         max-wait: 6000
         # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
         time-between-eviction-runs-millis: 60000
         # 配置一个连接在池中最小生存时间  单位为毫秒
         min-evictable-idle-time-millis: 300000
         validation-query: SELECT 1 FROM DUAL
         test-while-idle: true
         test-on-borrow: false
         test-on-return: false
         # 打开 PSCache,并且指定每个连接上PSCache的大小
         pool-prepared-statements: true
         max-pool-prepared-statement-per-connection-size: 20
         # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,wall用于防火墙
         filters: stat,wall
     # 配置mybatis
       mybatis:
         mapper-locations: classpath:mappers/*.xml
         # 全局的映射,不用在xml文件写实体类的全路径
        type-aliases-package: com.liyu.helloworld.generctor.domain
         configuration:
       # 开启驼峰映射
       map-underscore-to-camel-case: true
  3. 在resources目录下新建generator文件夹,并新建generatorConfig.xml配置文件,xml配置文件,用于配置实体类,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>
        <context id="DB2Tables" targetRuntime="MyBatis3">
       <commentGenerator>
            <property name="suppressDate" value="true"/>
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
    
        <!-- 数据库链接URL,用户名、密码 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/xf_local"
                        userId="root"
                        password="123456">
        </jdbcConnection>
    
        <!-- 类型转换 -->
        <javaTypeResolver>
            <!-- 是否使用BigDecimals,false可自动转化以下类型(Long Integer Short等) -->
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
    
        <!-- 生成模型的包名和位置-->
        <javaModelGenerator targetPackage="com.liyu.helloworld.generctor.domain" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
    
        <!-- 生成映射文件的包名和位置-->
        <sqlMapGenerator targetPackage="mappers" targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
    
        <!-- 生成DAO的包名和位置 -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.liyu.helloworld.generctor.mapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
    
        <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
        <table tableName="issue" domainObjectName="issue" enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
            <property name="useActualColumnNames" value="false"/>
            <!-- 数据库表主键 -->
            <generatedKey column="id" sqlStatement="Mysql" identity="true"/>
        </table>
    </context>
    </generatorConfiguration>

二、新建maven编译

> command :mybatis-generator:generate -e

然后进行编译

成功后,目录下生成对应文件

三、注意事项

**此处的路径一定要和添加的配置文件路径一直,否则会报找不到对应的文件

猜你喜欢

转载自www.cnblogs.com/liweiweicode/p/11929367.html