开发环境

  JDK:8u102

  Maven:3.3.9

  MySQL:5.7.10

  MySQL Connector:5.1.40

  IDE:IntelliJ IDEA 2016

  MyBatis:3.4.1

  MyBatis Generator:1.3.5

项目案例:

  个人博客

项目结构:

  

   blog-dao-impl模块:只是考虑到多个实现层而已。象征性的创建在这里。

项目依赖关系:

  

数据库详细:

  

blog-dao-api pom.xml 详细:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0"
 3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 5     <parent>
 6         <artifactId>blog</artifactId>
 7         <groupId>pers.kaloquan</groupId>
 8         <version>1.0-SNAPSHOT</version>
 9     </parent>
10     <modelVersion>4.0.0</modelVersion>
11
12     <artifactId>blog-dao-api</artifactId>
13
14     <properties>
15         <!-- MySQL Connector 版本 -->
16         <mysql-connector.version>5.1.40</mysql-connector.version>
17         <!-- MyBatis Generator 版本 -->
18         <mybatis-generator.version>1.3.5</mybatis-generator.version>
19
20         <!-- 指定MyBatis Generator插件的配置文件 -->
21         <plugin.generator.configurationFile>${project.basedir}\src\main\resources\mybatis-generator.xml</plugin.generator.configurationFile>
22         <!-- 是否重写已存在的文件 -->
23         <plugin.generator.overwrite>true</plugin.generator.overwrite>
24         <!-- 生成器targetProject的根目录 -->
25         <generator.project.root>D:\IDEAProjects\blog</generator.project.root>
26         <!-- 生成器所需驱动包的路径 -->
27         <generator.classpath>D:\Maven repository\mysql\mysql-connector-java\5.1.40\mysql-connector-java-5.1.40.jar</generator.classpath>
28
29         <!-- 驱动类 -->
30         <jdbc.driverClass>com.mysql.jdbc.Driver</jdbc.driverClass>
31         <!-- 链接地址 -->
32         <jdbc.url>jdbc:mysql://localhost:3306/blog?createDatabaseIfNotExist=true&amp;useSSL=true&amp;serverTimezone=UTC&amp;passwordCharacterEncoding=UTF-8&amp;characterEncoding=UTF-8</jdbc.url>
33         <!-- 用户名 -->
34         <jdbc.userId>root</jdbc.userId>
35         <!-- 密码 -->
36         <jdbc.password>root</jdbc.password>
37     </properties>
38
39     <dependencies>
40         <dependency>
41             <groupId>org.mybatis</groupId>
42             <artifactId>mybatis</artifactId>
43             <version>3.4.1</version>
44         </dependency>
45
46         <dependency>
47             <groupId>pers.kaloquan</groupId>
48             <artifactId>blog-model</artifactId>
49         </dependency>
50     </dependencies>
51
52     <build>
53         <plugins>
54             <plugin>
55                 <groupId>org.mybatis.generator</groupId>
56                 <artifactId>mybatis-generator-maven-plugin</artifactId>
57                 <version>${mybatis-generator.version}</version>
58                 <!-- 插件配置 -->
59                 <configuration>
60                     <configurationFile>${plugin.generator.configurationFile}</configurationFile>
61                     <overwrite>${plugin.generator.overwrite}</overwrite>
62                 </configuration>
63                 <!-- 编译之前需要执行的命令 -->
64                 <executions>
65                     <execution>
66                         <id>Generate MyBatis Artifacts</id>
67                         <goals>
68                             <goal>generate</goal>
69                         </goals>
70                     </execution>
71                 </executions>
72             </plugin>
73         </plugins>
74     </build>
75 </project>

查看配置

  

  *注意:在properties标签中声明的属性值可以在mybatis-generator.xml中使用!

mybatis-generator.xml 详细:

  位置:(根据自己需要放在某个地方,改变后在对应项目的pom.xml文件中配置MyBatis Generator插件)

    

 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <!DOCTYPE generatorConfiguration PUBLIC
 3         "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
 4         "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" >
 5 <generatorConfiguration>
 6
 7     <!-- !!!! Driver Class Path !!!! -->
 8     <classPathEntry location="${generator.classpath}"/>
 9
10     <!-- 使用MyBatis3Simple,避免生成多余的代码 -->
11     <context id="context" targetRuntime="MyBatis3Simple">
12         <commentGenerator>
13             <property name="suppressAllComments" value="false"/>
14             <property name="suppressDate" value="true"/>
15         </commentGenerator>
16
17         <!-- !!!! Database Configurations !!!! -->
18         <jdbcConnection driverClass="${jdbc.driverClass}" connectionURL="${jdbc.url}" userId="${jdbc.userId}" password="${jdbc.password}"/>
19
20         <javaTypeResolver>
21             <property name="forceBigDecimals" value="false"/>
22         </javaTypeResolver>
23
24         <!-- !!!! Model Configurations !!!! -->
25         <javaModelGenerator targetPackage="blog.model" targetProject="${generator.project.root}\blog-model\src\main\java">
26             <property name="enableSubPackages" value="false"/>
27             <property name="trimStrings" value="true"/>
28         </javaModelGenerator>
29
30         <!-- !!!! Mapper XML Configurations !!!! -->
31         <sqlMapGenerator targetPackage="mapper" targetProject="${generator.project.root}\blog-dao-impl\src\main\resources" >
32             <property name="enableSubPackages" value="false"/>
33         </sqlMapGenerator>
34
35         <!-- !!!! Mapper Interface Configurations !!!! -->
36         <!-- 使用MyBatis3Simple运行时,type只能为“ANNOTATEDMAPPER”或者“XMLMAPPER” -->
37         <!-- 这里采用注解配置,而非XML配置 -->
38         <javaClientGenerator targetPackage="blog.dao" targetProject="${generator.project.root}\blog-dao-api\src\main\java" type="ANNOTATEDMAPPER">
39             <property name="enableSubPackages" value="false"/>
40         </javaClientGenerator>
41
42         <!-- !!!! Table Configurations !!!! -->
43         <table tableName="user" schema="blog">
44             <columnOverride column="id" property="id"/>
45             <columnOverride column="name" property="name"/>
46         </table>
47     </context>
48 </generatorConfiguration>

查看配置

  不明确的地方或者有错误的地方,请指出!

参考资料:

  Driver/Datasource Class Names, URL Syntax and Configuration Properties for Connector/J

  MyBatis GeneratorXML Configuration File Reference

  Running MyBatis Generator With Maven

转载于:https://www.cnblogs.com/kaloquan/p/5931250.html

Maven多模块项目使用MyBatis Generator相关推荐

  1. maven多模块项目部署到服务器,GitHub - baxias/foweb: 一个基于 Spring+SpringMVC+Mybatis 的Maven多模块项目。(实现前后端分离的服务器端)...

    Foweb Framework A multi-modules maven project base on Spring+SpringMVC+Mybatis. 一个基于 Spring+SpringMV ...

  2. Springboot+Mybatis+Druid+Maven多模块项目搭建遇到的各种吭

    Springboot+Mybatis+Druid+Maven多模块项目搭建 这里记录一下搭建多模块遇到的吭 首先建立一个父级空项目,在pox里修改下配置 2,建立DaoMapper层和ModelEnt ...

  3. Maven多模块项目中应用maven-tomcat-plugin热部署

    Maven多模块项目中使用maven-tomcat-plugin热部署 比如有一个父模块xfl(类型为pom的maven项目),其中的pom.xml为: <modules> <mod ...

  4. Spring Boot项目利用MyBatis Generator进行数据层代码自动生成

    概 述 MyBatis Generator (简称 MBG) 是一个用于 MyBatis和 iBATIS的代码生成器.它可以为 MyBatis的所有版本以及 2.2.0之后的 iBATIS版本自动生成 ...

  5. 【sprinb-boot】maven 多模块项目:单独 spring-boot:run 某个模块

    目录 前言 假设的 maven 多模块项目 模块关系1 模块关系2 模块关系3 模块关系4 示例:模块关系1 1,my-parent1/pom.xml 文件 2,my-parent1/my-app1/ ...

  6. maven 多模块项目关系

    前言 maven 3.5.0 maven 多模块项目关系 maven 多模块项目关系有2种,分别为:继承关系和聚合关系. 继承关系 具有继承关系的多模块项目结构如下: my-project-inher ...

  7. maven 多模块项目:单独构建某个模块

    前言 maven 3.5.0 在maven 多模块项目中,使用-pl -am -amd等参数可以单独构建某个模块. maven 多模块项目关系 单独构建模块:module1 在父级项目目录中执行如下命 ...

  8. 在 IntelliJ IDEA 中创建基本的 Maven 多模块项目

    在 IntelliJ IDEA 中创建基本的 Maven 多模块项目 笔者的环境: Maven 3.6.3 JDK 11 IntelliJ IDEA 2020.2.2 (Ultimate Editio ...

  9. springcloud 子项目怎么导入_「 从0到1学习微服务SpringCloud 」09 补充篇-maven父子模块项目...

    系列文章(更新ing): 作为微服务的项目,如果将每个项目都拆成一个完整的项目,很难开发,那得打开多少个idea.应该将它们归到一个项目里,使用maven父子模块项目的形式,如下图 之前我们项目的拆成 ...

最新文章

  1. codecheck_use_record
  2. 别再搜集面经啦!小夕教你斩下NLP算法岗offer!
  3. Golang入门(1):安装与配置环境变量的意义
  4. tensorflow之线性回归
  5. php 学习笔记之搭建开发环境(mac版)
  6. sqlserver CASE WHEN语句示例
  7. 详解SR锁存器不定态
  8. Eclipse翻译插件
  9. Java枚举类 (详细解析java中的枚举类深入浅出)
  10. gatk过滤_GATK使用方法详解(变异检测)
  11. 项目 电话号码和E-mail地址提取程序 地实现
  12. DDoS 报告攻击类型占比
  13. Vue 中使用高德地图api
  14. LTE(4G) GUTI分配流程
  15. 浙大计算机考研导学,2016届浙大计算机考研复习经验整理
  16. github项目的JAVA项目Ratel,基于Netty实现
  17. Quartus (Quartus Prime 18.1)的安装及仿真步骤
  18. 免费网盘如何选择@2020年
  19. 台式计算机32位和64位的区别,电脑操作系统中32位和64位到底有哪些区别?
  20. dede采集插件自动采集文章图片自定义接口

热门文章

  1. Interviews(内连接,左外连接,分组、聚合)
  2. PHP isset 函数作用
  3. vs2013中的error c4996的问题
  4. 2018-2019 20165237网络对抗 Exp5 MSF基础应用
  5. 做图与树做到吐的一天
  6. lt;二gt;读lt;lt;大话设计模式gt;gt;之策略模式
  7. Android核心分析之二十三Andoird GDI之基本原理及其总体框架
  8. 用js改变embed标签的src值
  9. 图像特征检测描述(一):SIFT、SURF、ORB、HOG、LBP特征的原理概述及OpenCV代码实现
  10. 在C++中for、if...内定义的变量在其之外就失效了~