在上一篇文章中,我们简单的集成了一个springboot+mybatis+mysql的小demo,初步实现了前端后端数据的联通。我们发现我们日常开发过程中一些简单的代码,如实体类,简单的查询语句以及Dao层接口等,如果都靠自己手动编写,既费时又费力。那我们可以考虑利用mybatis的代码自动生成插件来帮助我们完成这些简单的代码编写。下面我们就来实现这个功能吧。。let's Go。。。
第一步:新建一个springboot整合mybatis的项目,上篇文章已经讲过,这里就不做详细介绍了,有兴趣可以看我上篇文章:https://blog.csdn.net/fy18120588045/article/details/99474643
新建好项目并按照标准规范建好文件夹,如图所示:
com/fly/mapper/generator这个文件夹,我们用来存放待会生成的Dao层接口
src/main/resources/mapper/generator文件夹,我们用来存放映射文件
src/main/resources/generator/generatorConfig.xml就是我们代码生成工具的配置文件
第二步:利用pom.xml集成代码生成工具插件:
<!-- mybatis generator 自动生成代码插件 -->
<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>
</plugin>
新建generatorConfig.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>
<!-- 数据库驱动:选择你的本地硬盘上面的数据库驱动包-->
<classPathEntry location="D:\maven\MyRepository_bak2\MyRepository\mysql\mysql-connector-java\5.1.45\mysql-connector-java-5.1.45.jar"/>
<context id="context" 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/test" userId="root" password="123456">
</jdbcConnection>
<javaTypeResolver>
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!-- 生成模型的包名和位置-->
<javaModelGenerator targetPackage="com.fly.pojo.generator" targetProject="src/main/java">
<property name="enableSubPackages" value="true"/>
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!-- 生成映射文件的包名和位置-->
<sqlMapGenerator targetPackage="generator" targetProject="src/main/resources/mapper">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<!-- 生成DAO的包名和位置-->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.fly.mapper.generator" targetProject="src/main/java">
<property name="enableSubPackages" value="true"/>
</javaClientGenerator>
<!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
<table tableName="user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
</context>
</generatorConfiguration>
注意:,本地数据库驱动包路径、生成Dao层接口、mapper映射文件和实体类的生成路径视自己情况修改,不要和我一样哦
第三步:上面相关配置文件都配置OK了,我们就可以启动代码生成工具插件了
点击右上方的按钮,如图
找到maven,按照图示操作即可:
都配置好点击确定,
最后一步,运行插件:点击generator,运行即可,
待运行成功后,我们查看下对应的文件夹下,发现已经 成功生成相关代码
我们简单对比一下代码,发现比自己写的还美观不少呢,嘻嘻
至此,springboot集成代码生成完成。