Mybatis Generator生成Mybatis Dao接口层*Mapper.xml以及对应实体类
【前言】
使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件,Mybatis-Generator的作用就是充当了一个代码生成器的角色,使用代码生成器不仅可以简化我们的工作量,使得工作效率得到提升,而且可以大大减少代码出错的概率。在SSM(spring,springmvc,mybatis)三层架构中,我们免不了要使用mybatis进行mapper文件的编写,这里我们采用mybatis-generator来进行我们的各依赖文件的生成。
【获取方式】
Mybatis-Generator在官网有zip包可以进行下载,但是是国外服务器,网络状况不好的用户可能不能流畅下载,这里我已经有下载好的zip包并配置范例上传在我的文件里面,亲们可以在这里直接进行下载,链接如下:
-> https://files.cnblogs.com/files/qixiaoyizhan/mybatis-generator-core-1.3.5.zip
下载好的zip包进行解压到任意位置,然后我们可以看到其中的文件目录:

jar包是生成器代码,generatorConfig.xml是生成配置文件,src是生成目录。
【实现条件】
由于生成器是jar包,因此要是用该工具,必须在系统中装有JDK并且配置好环境变量。
是否装有jdk我们可以在任意位置打开cmd控制台写入命令 java -version 进行查看:

这里显示了jdk的版本号,说明环境变量已经配置周全。
【实现过程】
1.generatorConfig.xml文件的配置
首先我们进行generatorConfig.xml进行生成文件的配置,我们打开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>
<!--数据库驱动-->
<classPathEntry location="mysql-connector-java-5.1.21-bin.jar"/>
<context id="DB2Tables" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressDate" value="true"/>
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<!--数据库链接地址账号密码-->
<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/db_test?useSSL=false" userId="db_test" password="123456">
</jdbcConnection>
<javaTypeResolver>
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!--生成Model类存放位置-->
<javaModelGenerator targetPackage="Data.Entities" targetProject="src">
<property name="enableSubPackages" value="true"/>
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!--生成映射文件存放位置-->
<sqlMapGenerator targetPackage="mapper" targetProject="src">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<!--生成Dao类存放位置-->
<javaClientGenerator type="XMLMAPPER" targetPackage="Dao" targetProject="src">
<property name="enableSubPackages" value="true"/>
</javaClientGenerator>
<!--生成对应表及类名-->
<table tableName="student" domainObjectName="Student" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
</context>
</generatorConfiguration>
文件设置参数在里面有说明,这里不再进行赘述。
2.调用mybatis-generator-core-1.3.5.jar进行代码的生成
在该文件夹打开cmd命令行(可以按住shift+鼠标右键,在此处打开命令行)

然后在打开的窗口输入命令:
java -jar mybatis-generator-core-.jar -configfile generatorConfig.xml -overwrite
代码执行成功后,我们可以看到代码已经生成完整:

打开我们的src目录,即可看到生成的代码。
【可能遇到问题】
jdk环境变量未配置完好导致代码执行不成功->按照网上步骤进行环境变量的配置。
数据库连接错误->数据库字符串,账号或密码错误。
【系统展望】
该生成器由于需要手工打开文件进行配置,而且还需要进行命令行执行方式,不利于进行操作,后续将改为使用界面方式进行操作。
Mybatis Generator生成Mybatis Dao接口层*Mapper.xml以及对应实体类的更多相关文章
- Maven下用MyBatis Generator生成文件
使用Maven命令用MyBatis Generator生成MyBatis的文件步骤如下: 1.在mop文件内添加plugin <build> <finalName>KenShr ...
- Mybatis逆向工程生成po、mapper接口、mapper.xml
Mybatis逆向工程生成po.mapper接口.mapper.xml 一.新建一个maven工程 请查看我的另一篇博客:<使用idea创建一个maven工程> 二.引入所需依赖 需要my ...
- MyBatis Generator生成DAO——序列化
MyBatis Generator生成DAO 的时候,生成的类都是没有序列化的. 还以为要手工加入(開始是手工加入的),今天遇到分页的问题,才发现生成的时候能够加入插件. 既然分页能够有插件.序列化是 ...
- 简单三步快速学会使用Mybatis-Generator自动生成entity实体、dao接口以及mapper映射文件(postgre使用实例)
前言: mybatis-generator是根据配置文件中我们配置的数据库连接参数自动连接到数据库并根据对应的数据库表自动的生成与之对应mapper映射(比如增删改查,选择性增删改查等等简单语句)文件 ...
- mybatis Generator生成代码及使用方式
本文原创,转载请注明:http://www.cnblogs.com/fengzheng/p/5889312.html 为什么要有mybatis mybatis 是一个 Java 的 ORM 框架,OR ...
- MyBatis Generator 生成的example 使用 and or 简单混合查询
MyBatis Generator 生成的example 使用 and or 简单混合查询 参考博客:https://www.cnblogs.com/kangping/p/6001519.html 简 ...
- JAVA - SpringBoot项目引用generator生成 Mybatis文件
JAVA - SpringBoot项目引用generator生成 Mybatis文件 在spring官网https://start.spring.io/自动生成springboot项目,这里选择项目 ...
- 利用org.mybatis.generator生成实体类
springboot+maven+mybatis+mysql 利用org.mybatis.generator生成实体类 1.添加pom依赖: 2.编写generatorConfig.xml文件 ( ...
- 【记录】Mybatis Generator生成数据对象Date/TimeStamp 查询时间格式化
Mybatis Generator是很好的工具帮助我们生成表映射关联代码,最近博主遇到一个问题,找了很久才解决, 就是用Mybatis Generator生成实体类的时候,Date 时间无法格式化输出 ...
随机推荐
- XML功能
REF:https://www.baidu.com/link?url=_-UY8rZVAORlesKTth0F7C8LbvXCL4lSwz6vmQVnTEgmT06NFGdoaD9FbuEQhR7xG ...
- Eclipse插件springsource-tool-suite在线和离线安装步骤
springsource-tool-suite插件是一个基于Eclipse的开发环境,为开发Spring应用程序而定制.它提供了一个即用的环境来实现,调试,运行和部署Spring应用程序,包括Pivo ...
- 使用jsonp来实现跨域请求
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- Opengl4.5 中文手册—C
索引 A B C D E F G H I J K L M N O P Q ...
- JSP入门 taglib
自定义标签库(taglib),将原本需要写在jsp中的java代码封装起来,成为可复用的组件. taglib的写法和jsp动作(action)很相似,是由taglib前缀,冒号,标签名三者的组合体.其 ...
- GCD hdu2588
GCD Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...
- 支持向量机SVM(一)
[转载请注明出处]http://www.cnblogs.com/jerrylead 1 简介 支持向量机基本上是最好的有监督学习算法了.最开始接触SVM是去年暑假的时候,老师要求交<统计学习理论 ...
- JavaWeb(六)之MVC与三层架构设计
前言 这段时间要学习hadoop,但是也希望把自己的web知识复习起来.所以花自己休息的时间把这些web的知识好好的巩固一下!没有什么可以阻挡我前进的脚步. 首先我们先了解一下: C/S:客户端 / ...
- Elixir游戏服设计五
在<Elixir游戏服设计一>里提到,按照系统功能划分成app要保证原子性很难, 现在想想也没那么难.保证原子性,无非就是需要某个单点去完成操作.那么选择玩家进程去做原子性工作就可以了. ...
- zoj 1889 ones 数学
Ones Time Limit: 2 Seconds Memory Limit: 65536 KB Given any integer 0 <= n <= 10000 not d ...