MyBatis之七:使用generator工具
可以将mybatis理解成一种半自动化orm框架,通过注解或者配置xml映射文件来手写相关sql语句,不能像我之前介绍orm的文章那样全对象化操作数据库增删改查。其实你会发现,手写配置xml映射文件是件很痛苦的事情,正因为如此,mybatis提供出了一个generator工具,只需要配置数据库连接字符串、对应数据库的驱动包,再执行固定格式的命令行语句即可轻松完事。generator的下载地址在:http://code.google.com/p/mybatis/wiki/Downloads?tm=2,需要翻墙下载,这里会在文章结尾提供generator文件下载。
一、generator文件解压之后基本结构如图:

1、src文件夹是存放生成之后的dao、mapping、model文件
2、generator.xml 是配置文件
3、mybatis-generator-core-1.3.2.jar 是依赖的jar包
4、生成语句 是固定格式的命令行语句
二、配置generator.xml
需要修改的节点如下:
1、classPathEntry 数据库驱动包位置,物理绝对路径
2、context\jdbcConnection 数据库链接URL、用户名、密码
3、context\javaModelGenerator 的targetProject属性,指向generator.xml所在文件夹下面的src文件夹,该节点表示生成模型的包名和位置
4、context\sqlMapGenerator 的targetProject属性,指向generator.xml所在文件夹下面的src文件夹,该节点表示生成的映射文件包名和位置
5、context\javaClientGenerator 的targetProject属性,指向generator.xml所在文件夹下面的src文件夹,该节点表示生成DAO的包名和位置
6、context\table 的tableName与domainObjectName属性,具体对应数据库的表名与生成实体代码的名称。多个表就多个context\table节点
示例文件:
<?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="D:\94_JavaWorkbench\0_MavenRepository\com\microsoft\sqlserver\sqljdbc4\4.0\sqljdbc4-4.0.jar" />
<context id="MyBatis3Generator" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!-- 数据库链接URL、用户名、密码 -->
<jdbcConnection driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver" connectionURL="jdbc:sqlserver://localhost:1433;databaseName=Northwind" userId="sa" password="">
</jdbcConnection>
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- 生成模型的包名和位置 -->
<javaModelGenerator targetPackage="Northwind.model" targetProject="D:\94_JavaWorkbench\0_MyBatis_Generator\src">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- 生成的映射文件包名和位置 -->
<sqlMapGenerator targetPackage="Northwind.mapping" targetProject="D:\94_JavaWorkbench\0_MyBatis_Generator\src">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 生成DAO的包名和位置 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="Northwind.dao" targetProject="D:\94_JavaWorkbench\0_MyBatis_Generator\src">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!-- 要生成那些表(更改tableName和domainObjectName就可以) -->
<table tableName="Categories" domainObjectName="Categories" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
<table tableName="Customers" domainObjectName="Customers" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" /> </context>
</generatorConfiguration>
三、生成相关文件
在当前文件夹下面进入dos,两种方法(d:\cd不做介绍),如下
1、路径框输入cmd

2、当前文件夹下 按下shift键 鼠标右键进入dos

出现dos窗口后再里面输入命令:java -jar mybatis-generator-core-1.3.2.jar -configfile generator.xml -overwrite

四、在src文件夹里面查看已生成的文件,可以拷贝到项目里面。
附generator文件下载:http://files.cnblogs.com/files/wucj/Generator.rar
MyBatis之七:使用generator工具的更多相关文章
- mybatis代码生成(generator工具生成代码)
generator工具生成代码 下载地址 http://pan.baidu.com/s/1bY8C0I
- springboot集成mybatis及mybatis generator工具使用
原文链接 前言mybatis是一个半自动化的orm框架,所谓半自动化就是mybaitis只支持数据库查出的数据映射到pojo类上,而实体到数据库的映射需要自己编写sql语句实现,相较于hibernat ...
- springboot入门(三)-- springboot集成mybatis及mybatis generator工具使用
前言 mybatis是一个半自动化的orm框架,所谓半自动化就是mybaitis只支持数据库查出的数据映射到pojo类上,而实体到数据库的映射需要自己编写sql语句实现,相较于hibernate这种完 ...
- mybatis generator工具的使用
mybatis反转数据库的配置文件: generatorConfig.xml: <?xml version="1.0" encoding="UTF-8"? ...
- mybatis generator工具集成(一)
第一步,pom中加入 <build> <plugins> <plugin> <groupId>org.springframework.boot</ ...
- mybatis plus generator工具集成(一)
参数配置文档 配置分两步 1.添加依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId> ...
- mybatis,Spring等工具对xml文件正确性的验证
我们知道mybatis或者spring都是使用xml文件作为配置文件,配置文件的格式都是定义在叫做.dtd或者.xsd文件中的,当工具在解析用户自己定义的xml文件的时候,如何才能知道用户自定义的文件 ...
- MyBatis sqlsession 简化 使用工具类创建
2019-04-09 @Test public void Test() throws Exception { // 1.读取配置文件 String resource = "mybatis-c ...
- springboot学习随笔(四):Springboot整合mybatis(含generator自动生成代码)
这章我们将通过springboot整合mybatis来操作数据库 以下内容分为两部分,一部分主要介绍generator自动生成代码,生成model.dao层接口.dao接口对应的sql配置文件 第一部 ...
随机推荐
- Oracle“死锁”模拟
本着实验优先的原则,先模拟死锁的发生,然后在列一下死锁产生的四个必要条件和处理死锁的一般策略. 1.创建两个简单的表t1_deadlock和t2_deadlock,每个表中仅仅包含一个字段asys@o ...
- [Everyday Mathematics]20150210
设正方体 $ABCD-A_1B_1C_1D_1$ 的棱长为 $1$, $E$ 为 $AB$ 的中点, $P$ 为体对角线 $BD_1$ 上一点, 当 $\angle CPE$ 最大时, 求三菱锥 $P ...
- Android中GridView滚动到底部加载数据终极版
之前在项目中有一个需求是需要GridView控件,滚动到底部自动加载.但是呢GridView控件并不提供诸如ListView监听滚动到底部的onScrollListener方法,为了实现这样一个效果, ...
- AtCoder Grand Contest 001 C Shorten Diameter 树的直径知识
链接:http://agc001.contest.atcoder.jp/tasks/agc001_c 题解(官方): We use the following well-known fact abou ...
- 【QTP】自动化测试:
一.参数化: 1.随机数: 下面两个语句都可以: Window("Flight Reservation").Dialog("Flights Table").Wi ...
- VC++6.0 MFC播放视频
注:需要在windows xp下才可以使用Windows Media Player插件,在windows 7下面会找不到该插件. 1.Windows Media Player控件的主要方法: 1)Ge ...
- Android的AutoCompleteTextView在API17高版本添加的setText函数在低版本系统居然能正常调用?官方文档是不是不靠谱了?
官方文档:https://developer.android.com/reference/android/widget/AutoCompleteTextView.html#setText(java.l ...
- C++ 编程输入输出语句
C++ 的标准输入.输出就是我们已经使用的包含头文件iostream,他不但提供了I/O的库函数,也提供了使用该库的流模式,从cin>> 流入 和cout<<流出到设备就是一 ...
- subclipse svn 在64位win7下报Failed to load JavaHL Library
- ASM基本操作
1. 添加一个磁盘组 SQL> create diskgroup recover external redundancy disk 'ORCL:kel3'; Diskgroup created. ...