Maven多模块项目使用MyBatis Generator
开发环境:
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&useSSL=true&serverTimezone=UTC&passwordCharacterEncoding=UTF-8&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相关推荐
- maven多模块项目部署到服务器,GitHub - baxias/foweb: 一个基于 Spring+SpringMVC+Mybatis 的Maven多模块项目。(实现前后端分离的服务器端)...
Foweb Framework A multi-modules maven project base on Spring+SpringMVC+Mybatis. 一个基于 Spring+SpringMV ...
- Springboot+Mybatis+Druid+Maven多模块项目搭建遇到的各种吭
Springboot+Mybatis+Druid+Maven多模块项目搭建 这里记录一下搭建多模块遇到的吭 首先建立一个父级空项目,在pox里修改下配置 2,建立DaoMapper层和ModelEnt ...
- Maven多模块项目中应用maven-tomcat-plugin热部署
Maven多模块项目中使用maven-tomcat-plugin热部署 比如有一个父模块xfl(类型为pom的maven项目),其中的pom.xml为: <modules> <mod ...
- Spring Boot项目利用MyBatis Generator进行数据层代码自动生成
概 述 MyBatis Generator (简称 MBG) 是一个用于 MyBatis和 iBATIS的代码生成器.它可以为 MyBatis的所有版本以及 2.2.0之后的 iBATIS版本自动生成 ...
- 【sprinb-boot】maven 多模块项目:单独 spring-boot:run 某个模块
目录 前言 假设的 maven 多模块项目 模块关系1 模块关系2 模块关系3 模块关系4 示例:模块关系1 1,my-parent1/pom.xml 文件 2,my-parent1/my-app1/ ...
- maven 多模块项目关系
前言 maven 3.5.0 maven 多模块项目关系 maven 多模块项目关系有2种,分别为:继承关系和聚合关系. 继承关系 具有继承关系的多模块项目结构如下: my-project-inher ...
- maven 多模块项目:单独构建某个模块
前言 maven 3.5.0 在maven 多模块项目中,使用-pl -am -amd等参数可以单独构建某个模块. maven 多模块项目关系 单独构建模块:module1 在父级项目目录中执行如下命 ...
- 在 IntelliJ IDEA 中创建基本的 Maven 多模块项目
在 IntelliJ IDEA 中创建基本的 Maven 多模块项目 笔者的环境: Maven 3.6.3 JDK 11 IntelliJ IDEA 2020.2.2 (Ultimate Editio ...
- springcloud 子项目怎么导入_「 从0到1学习微服务SpringCloud 」09 补充篇-maven父子模块项目...
系列文章(更新ing): 作为微服务的项目,如果将每个项目都拆成一个完整的项目,很难开发,那得打开多少个idea.应该将它们归到一个项目里,使用maven父子模块项目的形式,如下图 之前我们项目的拆成 ...
最新文章
- codecheck_use_record
- 别再搜集面经啦!小夕教你斩下NLP算法岗offer!
- Golang入门(1):安装与配置环境变量的意义
- tensorflow之线性回归
- php 学习笔记之搭建开发环境(mac版)
- sqlserver CASE WHEN语句示例
- 详解SR锁存器不定态
- Eclipse翻译插件
- Java枚举类 (详细解析java中的枚举类深入浅出)
- gatk过滤_GATK使用方法详解(变异检测)
- 项目 电话号码和E-mail地址提取程序 地实现
- DDoS 报告攻击类型占比
- Vue 中使用高德地图api
- LTE(4G) GUTI分配流程
- 浙大计算机考研导学,2016届浙大计算机考研复习经验整理
- github项目的JAVA项目Ratel,基于Netty实现
- Quartus (Quartus Prime 18.1)的安装及仿真步骤
- 免费网盘如何选择@2020年
- 台式计算机32位和64位的区别,电脑操作系统中32位和64位到底有哪些区别?
- dede采集插件自动采集文章图片自定义接口
热门文章
- Interviews(内连接,左外连接,分组、聚合)
- PHP isset 函数作用
- vs2013中的error c4996的问题
- 2018-2019 20165237网络对抗 Exp5 MSF基础应用
- 做图与树做到吐的一天
- lt;二gt;读lt;lt;大话设计模式gt;gt;之策略模式
- Android核心分析之二十三Andoird GDI之基本原理及其总体框架
- 用js改变embed标签的src值
- 图像特征检测描述(一):SIFT、SURF、ORB、HOG、LBP特征的原理概述及OpenCV代码实现
- 在C++中for、if...内定义的变量在其之外就失效了~