源码见:https://github.com/shirayner/tk-mybatis-generator

一、要点

二、具体实现

1.项目结构

2.配置 pm.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>study-parent</artifactId>
<groupId>com.ray.study</groupId>
<version>1.0-SNAPSHOT</version>
</parent> <modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<artifactId>tk-mybatis-generator</artifactId> <properties>
<!-- MyBatis Generator -->
<!-- Java接口和实体类 -->
<targetJavaProject>${basedir}/src/main/java</targetJavaProject>
<targetMapperPackage>tk.mybatis.mapper.mapper</targetMapperPackage>
<targetModelPackage>tk.mybatis.mapper.model</targetModelPackage>
<!-- XML生成路径 -->
<targetResourcesProject>${basedir}/src/main/resources</targetResourcesProject>
<targetXMLPackage>mapper</targetXMLPackage>
<!-- 依赖版本 -->
<mapper.version>3.4.6</mapper.version>
<mysql.version>5.1.6</mysql.version>
</properties> <build>
<finalName>mmall</finalName>
<plugins>
<!--1.mybatis-generator 使用通用mapper实现的-->
<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>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
</dependency>
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper</artifactId>
<version>${mapper.version}</version>
</dependency>
</dependencies>
</plugin> </plugins> </build> </project>

3.配置 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>
<properties resource="config.properties"/> <context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat">
<property name="beginningDelimiter" value="`"/>
<property name="endingDelimiter" value="`"/> <plugin type="${mapper.plugin}">
<property name="mappers" value="${mapper.Mapper}"/>
</plugin> <jdbcConnection driverClass="${jdbc.driverClass}"
connectionURL="${jdbc.url}"
userId="${jdbc.user}"
password="${jdbc.password}">
</jdbcConnection> <javaModelGenerator targetPackage="${targetModelPackage}" targetProject="${targetJavaProject}"/> <sqlMapGenerator targetPackage="${targetXMLPackage}" targetProject="${targetResourcesProject}"/> <javaClientGenerator targetPackage="${targetMapperPackage}" targetProject="${targetJavaProject}" type="XMLMAPPER" /> <table tableName="%" >
<generatedKey column="id" sqlStatement="Mysql" identity="true"/>
</table>
</context>
</generatorConfiguration>

4. 配置 config.properties

# 数据库配置
jdbc.driverClass = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/mmall
jdbc.user = root
jdbc.password =123 #c3p0
jdbc.maxPoolSize=50
jdbc.minPoolSize=10
jdbc.maxStatements=100
jdbc.testConnection=true # 通用Mapper配置
mapper.plugin = tk.mybatis.mapper.generator.MapperPlugin
mapper.Mapper = tk.mybatis.mapper.common.Mapper

三、参考资料

1.  abel533

(1) MyBatis 通用 Mapper  3. MyBatis Generator 插件

(2) 使用Mapper专用的MyBatis Generator插件

(3) MybatisGeneator.md

最新文章

  1. 22行Python代码实现 单词纠错
  2. MongoDB学习笔记二:创建、更新及删除文档
  3. [C++] C/C++结构体的区别
  4. JAVA学习Swing章节按钮组件JButton的简单学习
  5. zhx&#39;s contest (矩阵快速幂 + 数学推论)
  6. z/os上的tar和gzip(2)
  7. visio 由于形状保护和/或图层属性设置不能进行编辑
  8. shell脚本之if语句
  9. ubuntu 12.04内核升级到3.13.1
  10. C++模板使用介绍
  11. The Bellman-Ford algorithm
  12. Quartz.NET开源作业调度架构
  13. angular调用WCF服务,读取文件夹下图片显示列表,下载另存为图片
  14. Azure Storage Client Library 重试策略建议
  15. 为 Azure IoT Edge 设备部署 Azure Stream Analytics 服务
  16. Java集合框架知多少——干货!!!
  17. __x__(38)0909第五天__雪碧图的制作
  18. Linux上 发布.Net Core
  19. cglib之Enhancer
  20. 异构平台同步(mysql--&gt;oracle)

热门文章

  1. Android学习笔记(36):Android的两种事件处理方式
  2. 【Sprint3冲刺之前】软件开发计划书
  3. inflate, findViewById与setContentView的差别与联系
  4. 加入 centos 右键 terminal
  5. Mysql 5.7.18 加密连接mysql_ssl_rsa_setup
  6. 一套ui满足ios与android界面
  7. 多通道(比方RGB三通道)卷积过程
  8. 获得手机的ip
  9. nexus-2.11.4-01-bundle.tar.gz 下载地址
  10. java常量池概念 (转)