美文网首页
Springboot+Mybatis generator自动生成

Springboot+Mybatis generator自动生成

作者: qinghaihu | 来源:发表于2020-03-28 21:15 被阅读0次

编写一些数据库固定套路如CRUD操作的代码,时间久了,其实还真的是一件比较繁琐乏味的事情。肯定有人会想到,既然是固定套路,有着固定的模式,完全可以用代码工具来实现嘛!哈哈,你别不信,还真的有人开发出了这样的优秀的工具,那就是Mybatis generator。

1.1 创建Springboot工程

创建一个Springboot 模块工程,操作步骤可以参考之前写的《使用IDEA搭建和部署SpringBoot多模块项目(Multi-Module)》,创建后的springboot-mybatisgenerator目录如下图。


directory.png

dao:数据库mapper接口存放目录
entity:存放数据表对应的bean实体存放目录
service:服务层接口类存放目录
mapper:存放xml文件目录

2.1 配置mybatis-generator插件

数据库表创建好后,就可以使用插件来自动生成mapper和xml文件了,但在这之前,需对插进进行一些配置。

mybatis-generator主要包括两步:

第一步设置插件的配置参数,这里需要配置的信息包括4个

  1. 数据库相关信息配置,包括驱动名称、数据库名、用户名、密码
  2. 生成实体类的位置,确保targetPackage包名设置正确
  3. 生成的Mpper.xml存放位置,这里将mapper保存到resources目录下的mapper文件夹中
  4. 接口文件的存放位置
    mybatis-generator-config.xml插件配置文件
<!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="context" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressAllComments" value="true"/>
            <property name="suppressDate" value="true"/>
        </commentGenerator>
        <!-- 数据库的相关配置 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://192.168.245.101:3306/studyDB"
                        userId="root"
                        password="xxxxxx"/>

        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>

        <!-- 实体类生成的位置 -->
        <javaModelGenerator targetPackage="com.qinghaihu.springbootmybatisgenerator.entity" targetProject="src/main/java">
            <property name="enableSubPackages" value="false"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        
        <!-- *Mapper.xml 文件的位置 -->
        <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>
        
        <!-- Mapper 接口文件的位置 -->
        <javaClientGenerator targetPackage="com.qinghaihu.springbootmybatisgenerator.dao" targetProject="src/main/java" type="XMLMAPPER">
            <property name="enableSubPackages" value="false"/>
        </javaClientGenerator>
        
        <!-- 相关表的配置 -->
        <table tableName="sys_user" domainObjectName="SysUser" enableCountByExample="false"  enableDeleteByExample="false" enableSelectByExample="false" enableUpdateByExample="false"/>
        <!--
        <table tableName="department" domainObjectName="Department" enableCountByExample="false"  enableDeleteByExample="false" enableSelectByExample="false" enableUpdateByExample="false"/>
        -->
    </context>
</generatorConfiguration>

第二步配置运行时的参数
在pom文件build中增加plugin节点配置

    <build>
        <plugins>
            <!-- mybatis generator plugin config -->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.7</version>
                <configuration>
                    <!--配置文件的位置-->
                    <configurationFile>${basedir}/src/main/resources/mybatisGeneratorConfig.xml</configurationFile>
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>${mysql.version}</version>
                    </dependency>
                </dependencies>
            </plugin>

            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

配置好插件后,IntelliJ IDEA右侧的maven面板plugin中,就能看到添加的mybatis-generator.


mybatis generator plugin.png

双击mybatis-generator:generate后,在指定目录自动生成entity、mapper和xml文件。


generated files.png

mapper文件中,CRUD相关操作代码插件也已经帮我们生成。


Mapper detalis.png

3 项目源码

https://github.com/zhanglianzhong/sprinboot-tech.git

相关文章

网友评论

      本文标题:Springboot+Mybatis generator自动生成

      本文链接:https://www.haomeiwen.com/subject/jptjuhtx.html