您的位置:首页 > 移动开发

使用Maven插件来完成Mybatis逆向工程

2017-08-19 12:04 399 查看
本教程参考MyBatis Generator官方文档制作。


一、简单介绍

Mybatis官方提供了逆向工程支持,只需简单操作,就可以根据数据库的表生成简单的实体类POJO和Mapper等文件。这里仅仅介绍使用Maven的插件来自动完成逆向工程操作。


二、操作流程


1、建立简单的Maven项目

在pom.xml文件中添加mybatis-generator-maven-plugin插件。
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.5</version>
<executions>
<execution>
<id>Generate MyBatis Artifacts</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>


2、配置generatorConfig.xml

在resources文件夹下面新建一个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>
<!-- 指定数据库连接的jar包的绝对路径 -->
<classPathEntry location="/Users/lemon/Desktop/mysql-connector-java-5.1.9.jar"/>

<context id="testTables" targetRuntime="MyBatis3">

<!-- 是否去除自动生成的注释 true:是 : false:否 -->
<commentGenerator>
<property name="suppressAllComments" value="true"/>
</commentGenerator>

<!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/mybatis"
userId="root"
password="123456">
</jdbcConnection>
<!-- Oracle数据库的连接信息 -->
<!-- <jdbcConnection driverClass="oracle.jdbc.OracleDriver"
connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:yycg"
userId="yycg"
password="yycg">
</jdbcConnection> -->

<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和
NUMERIC 类型解析为java.math.BigDecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>

<!-- targetProject:生成PO类的位置, targetProject的值跟系统有关,Windows写.\src即可,linux,mac写./src-->
<javaModelGenerator targetPackage="cn.lemon.maven.pojo" targetProject="./src/main/java">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="true"/>
<!-- 从数据库返回的值被清理前后的空格 -->
<property name="trimStrings" value="true"/>
</javaModelGenerator>

<!-- targetProject:mapper映射文件生成的位置 -->
<sqlMapGenerator targetPackage="cn.lemon.maven.mapper" targetProject="./src/main/java">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>

<!-- targetPackage:mapper接口生成的位置 -->
<!-- Mapper.xml文件生成的位置要和对应发mapper类在同一个包下 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="cn.lemon.maven.mapper" targetProject="./src/main/java">
<property name="enableSubPackages" value="true"/>
</javaClientGenerator>

<!-- 指定数据库表,有多少表就指定多少下面的标签,schema写实体类的名称,tableName写表名,domainObjectName写实体类的名称 -->
<table schema="User" tableName="user" domainObjectName="Users"/>
<table schema="Orders" tableName="orders" domainObjectName="Orders"/>

<!-- 有些表的字段需要指定java类型
<table schema="" tableName="">
<columnOverride column="" javaType="" />
</table> -->

</context>
</generatorConfiguration>


3、生成操作

如果你使用的是Eclipse开发IDE,那么就直接在Run As--->Maven build...--->Goals中输入mybatis-generator:generate命令就可以生成;如果你使用的是IDEA的话,那么直接找到Maven工具栏,直接点击mybatis-generator:generate即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息