MyBatis代码生成器(maven插件方式和控制台命令运行方式)
代码生成器的作用:
1、生成domain
2、生成mapper接口
3、生成mapper映射文件
准备工作:导入MyBatis所需要的包
第一步:在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数据库驱动包路径-->
<classPathEntry location="D:\repository\mysql\mysql-connector-java\5.1.39\mysql-connector-java-5.1.39.jar" />
<!--
context:代码生成规则配置的上下文
id:标识
targetRuntime: MyBatis3Simple 只会生成基本的CRUD操作 -->
<context id="DB2Tables" targetRuntime="MyBatis3Simple"> <!--commentGenerator:注释生成策略-->
<commentGenerator>
<!--suppressAllComments:是否阻止注释生成-->
<property name="suppressAllComments" value="true"/>
<!--suppressDate:是否阻止时间戳生成-->
<property name="suppressDate" value="true"/>
</commentGenerator> <!--jdbcConnection:数据库的链接属性-->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql:///数据库名称"
userId="用户名"
password="密码">
</jdbcConnection> <!--javaTypeResolver:java类型转换策略-->
<javaTypeResolver >
<!-- forceBigDecimals
false:如果数据库中的字段类型为numeric或者decimal,在代码生成的时候根据数据库中设定的长度自动选择java类型进行转换
true:直接使用java.math.BigDecimal类型-->
<property name="forceBigDecimals" value="false" />
</javaTypeResolver> <!--domain生成策略;targetPackage:生成到哪个包下面,targetProject:生成到哪个项目目录下面-->
<javaModelGenerator targetPackage="cn.wang.domain" targetProject="src/main/java">
<!--<property name="enableSubPackages" value="true" />-->
<!--表示是否修剪字符串(去掉空格-->
<property name="trimStrings" value="true" />
</javaModelGenerator> <!--sqlMapGenerator:映射文件生成策略
targetPackage:生成到哪个包下面,targetProject:生成到哪个项目目录下面
-->
<sqlMapGenerator targetPackage="cn.wang.mapper" targetProject="src/main/resources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator> <!--mapper接口生成策略
type:ANNOTATEDMAPPER:注解的形式
XMLMAPPER:xml映射的形式-->
<javaClientGenerator type="XMLMAPPER" targetPackage="cn.wang.mapper" targetProject="src/main/java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator> <!--指定要生成代码的表
domainObjectName:设置表对应的domain实体类生成的名称
-->
<table tableName="t_user" domainObjectName="User"></table>
<table tableName="t_dept" domainObjectName="Dept"></table>
<table tableName="product" domainObjectName="Product"></table> </context>
</generatorConfiguration>
第二步:在Maven项目的pom.xml加入以下配置(Maven插件方式使用)
注意:以下配置千万不要放在<pluginManagement></pluginManagement>标签里面。
<!--mybatis_generator代码生成器专用-->
<build>
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.7</version>
</plugin>
</plugins>
</build>
第三步:使用MyBatis代码生成器
配置完毕后,就可以在Idea页面最右边的Maven Projects中看到代码生成器,右键点击代码生成器运行即可。

拓展:使用命令运行代码生成器
1、必须事先在src/main/resources(必须)目录下创建代码生成器配置文件(generatorConfig.xml)
2、下载jar包:mybatis-generator-core-1.3.7.jar;并将jar包放在项目根目录下。
3、在项目根目录中打开cms控制台,执行以下命令即可。
java -jar mybatis-generator-core-1.3.7.jar -configfile generatorConfig.xml -overwrite
MyBatis代码生成器(maven插件方式和控制台命令运行方式)的更多相关文章
- Maven插件方式使用Mybatis Generator
Mybatis Generator Mybatis Generator简称MBG,可以根据数据库自动生成实体类.单表查询接口及其映射xml文件(也可以选择以注解方式生成). 下面介绍一下以maven插 ...
- idea + mybatis generator + maven 插件使用
idea + mybatis generator + maven 插件使用 采用的是 generator 的 maven 插件的方式 ~ 1 pom.xml mybatis其它配置一样,下面是配置my ...
- Eclipse中Maven插件部分常用功能命令介绍
原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/6689010.html Eclipse中安装Maven插件之后,就能很方便的管理Maven项 ...
- mybatis generator maven插件自动生成代码
如果你正为无聊Dao代码的编写感到苦恼,如果你正为怕一个单词拼错导致Dao操作失败而感到苦恼,那么就可以考虑一些Mybatis generator这个差价,它会帮我们自动生成代码,类似于Hiberna ...
- Mybatis 使用maven插件mybatis-generator自动生成entities和SQL和mapper
第一步:在pom中添加该插件的配置,我直接把pom贴上来好了 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns ...
- (4)Maven快速入门_4在Spring+SpringMVC+MyBatis+Oracle+Maven框架整合运行在Tomcat8中
利用Maven 创建Spring+SpringMVC+MyBatis+Oracle 项目 分了三个项目 Dao (jar) Service (jar) Controller (web) ...
- Maven之(三)Maven插件
Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,像编译是通过maven-compile-plugin实现的.测试是通过maven-surefire-p ...
- 3.Maven之(三)Maven插件
转自:https://yq.aliyun.com/ziliao/312162 Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,像编译是通过maven- ...
- 【mybatis源码学习】利用maven插件自动生成mybatis代码
[一]在要生成代码的项目模块的pom.xml文件中添加maven插件 <!--mybatis代码生成器--> <plugin> <groupId>org.mybat ...
随机推荐
- Java springMVC前端传入字符串、后台接收Date的错误解决
今天在一个基于SSM的项目里出现以下报错 Cannot convert value of type [java.lang.String] to required type [java.util.Dat ...
- pipres生成当前项目所有的依赖文件
对于使用虚拟环境的Python程序,直接pip freeze即可.但是对于没有使用虚拟环境,再使用pip freeze就不行了,因为它会把系统所有的包都导出. 所以使用第三方库pipreqs 安装 p ...
- postgresql大数据查询加索引和不加索引耗时总结
1.创建测试表 CREATE TABLE big_data( id character varying(50) NOT NULL, name character varying(50), dat ...
- [java.lang.NoSuchMethodError: org.hibernate.Session.createQuery(Ljava/lang/String;)Lorg/hibernate/query/Query;]
jar包冲突 maven导入的jar包和自己将lib目录的jar同时加入了项目里面了
- CentOS 7.2 基于Docker实现MySQL主从架构
原文地址:https://blog.csdn.net/sunnyfg/article/details/80655823 1.安装Docker(略) Centos7下安装Docker : https:/ ...
- SQL Server DATEADD() 当前时间减7小时
- 小D课堂 - 零基础入门SpringBoot2.X到实战_第6节 SpringBoot拦截器实战和 Servlet3.0自定义Filter、Listener_24、深入SpringBoot过滤器和Servlet配置过滤器
笔记 1.深入SpringBoot2.x过滤器Filter和使用Servlet3.0配置自定义Filter实战(核心知识) 简介:讲解SpringBoot里面Filter讲解和使用Servle ...
- flutter Tooltip轻量级操作提示
Tooltip是继承于StatefulWidget的一个Widget,它并不需要调出方法,当用户长按被Tooltip包裹的Widget时,会自动弹出相应的操作提示. import 'package:f ...
- shell编程系列15--文本处理三剑客之awk格式化输出printf
shell编程系列15--文本处理三剑客之awk格式化输出printf printf的格式说明符 格式符 含义 %s 打印字符串 %d 打印十进制数 %f 打印一个浮点数 %x 打印十六进制数 %o ...
- idea 配置文件中文显示问题
配置文件中的中文,有时候会显示异常,因此需要修改文件编码格式修改.下面红框位置需要勾选上.