创建mysql数据库及表
手动创建数据库,utf-8编码
导出创建表的sql
/*
Navicat MySQL Data Transfer
Source Server : 172.20.19.200-test
Source Server Version : 50629
Source Host : 172.20.19.200:3306
Source Database : test2
Target Server Type : MYSQL
Target Server Version : 50629
File Encoding : 65001
Date: 2016-07-21 15:50:02
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for esm_palmyy_dept_relation
-- ----------------------------
DROP TABLE IF EXISTS `test`;
CREATE TABLE `test` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '当前表的主键',
`name` varchar(255) NOT NULL COMMENT '名称',
`desc` varchar(255) NOT NULL COMMENT '描述',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
在maven项目中配置Mybatis-generator插件
将generatorConfig.xml
放在src/main/resources
下。
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>
<!-- mysql驱动jar包的位置 -->
<classPathEntry location="D:\dev_tools\dev_libs\.m2\repository\mysql\mysql-connector-java\5.1.37\mysql-connector-java-5.1.37.jar" />
<context id="DB2Tables" targetRuntime="MyBatis3">
<!-- 去除自动生成的注释 -->
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://172.20.19.200:3306/test" userId="test" password="test">
</jdbcConnection>
<javaTypeResolver>
<!-- 是否强制转换Decimal或number域为java的BigDecimal -->
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- java domain 位置,targetProject可以写fs位置 -->
<javaModelGenerator targetPackage="com.mytest.palmyy.dao.model"
targetProject="src/main/java">
<property name="enableSubPackages" value="true" />
<!-- setter方法是否过滤空字符 -->
<property name="trimStrings" value="false" />
</javaModelGenerator>
<!-- 生成的映射xml位置 -->
<sqlMapGenerator targetPackage="com.mytest.palmyy.dao"
targetProject="src/main/resources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 生成映射mapper接口位置 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.mytest.palmyy.dao"
targetProject="src/main/java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!-- 需要自动逆向生成代码的表 -->
<table tableName="esm_palmyy_dept_relation" domainObjectName="epDeptRelation"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false" >
<property name="useActualColumnNames" value="false" />
<columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />
</table>
</context>
</generatorConfiguration>
如上配置文件所示,Mybatis自动生成的一般配置就完成了。
在pom.xml
中添加Mybatis生成插件的依赖
<dependencies>
<!-- mybatis反向生成插件,生成时打开,完成后关闭该依赖 -->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
</dependency>
</dependencies>
<!-- mybatis反向生成插件,生成时打开,完成后关闭该依赖 -->
<build>
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
</plugin>
</plugins>
</build>
生成代码
在项目的根目录(即pom.xml
文件所在目录),通过执行maven命令start mvn -Dmybatis.generator.overwrite=true mybatis-generator:generate
在指定位置生成java代码和*mapper.xml
sql映射文件。