milidou 2019-06-25
本篇文章讲解的Mybatis generator在Spring Boot上的实现
因为在一些小型企业,Mybatis相比Hibernate越来越流行,所以我觉得很有必要写一篇更加简单易懂的文章,来教会大家如何在Spring Boot上整合Mybatis并使用它的逆向工程
前提准备:
使用的工具:JDK1.8、IntelliJ IDEA、Mysql
首先:我们来看一下基本的目录结构:
数据库创建的表结构:
maven依赖的包与插件(只贴出Mybatis相关包):
maven插件依赖:
application.properties文件配置:
generatorConfig.xml(逆向工程配置文件,如果使用maven插件启动,请保持文件名一致)
<?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="suppressAllComments" value="true"/> </commentGenerator> <!--需要配置数据库连接--> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/SSM?useUnicode=true&characterEncoding=utf-8&useSSL=false" userId= <!--填写自己的--> password= <!--同上--> > </jdbcConnection> <javaTypeResolver > <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!--指定javaBean生成的位置 javaBean生成的位置--> <javaModelGenerator targetPackage="cn.lxt.bean" targetProject="./src/main/java"> <property name="enableSubPackages" value="true" /> <property name="trimStrings" value="true" /> </javaModelGenerator> <!--sql映射文件生成的位置--> <sqlMapGenerator targetPackage="mapper" targetProject="./src/main/resources"> <property name="enableSubPackages" value="true" /> </sqlMapGenerator> <!--指定dao接口生成的位置--> <javaClientGenerator type="XMLMAPPER" targetPackage="cn.lxt.dao" targetProject="./src/main/java"> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!--table是指定每个表的生成策略--> <table tableName="user" domainObjectName="User"></table> </context> </generatorConfiguration>
以上代码以及配置将准备工作已完成
下面教大家如何使用IDEA启动maven的插件
启动Edit Configuartions,在跳出界面中进行如下配置,-e更加方面我们阅读报错的原因
设置插件完毕之后,就可以启动插件了
运行之后,如果成功便会在指定位置(generatorConfig.xml中可以配置,具体看注释)生成响应的POJO类,dao接口,和mapper的.xml数据库文件.
当然如果你的电脑上许许多多的问题(日常)导致无法使用maven插件,可以在src/main/java文件夹下创建一个test类,写下如下代码:
注意new file("")中写下自己的逆向配置文件路径!
public class GeneratorTest { public static void main(String[] args)throws Exception { List<String> warnings = new ArrayList<String>(); boolean overwrite = true; File configFile = new File("/Users/apple/Documents/Spring-Boot/src/main/resources/generatorConfig.xml"); ConfigurationParser cp = new ConfigurationParser(warnings); Configuration config = cp.parseConfiguration(configFile); DefaultShellCallback callback = new DefaultShellCallback(overwrite); MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings); myBatisGenerator.generate(null); } }
然后单独运行这个类也能自动生成代码!
以上便是Mybatis基于Spring Boot的逆向工程实现
谢谢关注~记得点个赞再走哦