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

Posted 李维维

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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>
  1. 添加数据源,配置包扫描路劲
   # 设置数据源

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

  1. 在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

然后进行编译

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

三、注意事项

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

以上是关于springboot2.0入门-- springboot使用mybatis-generator自动代码生成的主要内容,如果未能解决你的问题,请参考以下文章

零基础快速入门SpringBoot2.0

小D课堂 - 零基础入门SpringBoot2.X到实战_汇总

零基础快速入门SpringBoot2.0 教程

springboot2.0 入门程序编写(helloword)

小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_1SpringBoot2.x课程介绍和高手系列知识点

springboot2.0入门----定义编程风格