Mybatis的逆向工程(generator)
Tips:Mybatis generator官网 http://www.mybatis.org/generator/configreference/commentGenerator.html
Mybatis的逆向工程的作用是可由表帮我们生成bean,dao,xml映射文件
1. 引入Mybatis generator的jar包

获取jar包

将此jar包放到lib文件夹下,并将其build path

2.创建并获取generator配置文件


接下来,修改generator.xml配置文件,具体内容及释义见下代码
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE generatorConfiguration
3 PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
4 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
5 <!-- generator配置文件 -->
6 <generatorConfiguration>
7 <!-- mysql驱动jar所在位置 -->
8 <classPathEntry location="D:\\jarorpackage\\mysql\\mysql-connector-java-5.1.47.jar" />
9
10 <!-- 数据源的信息 -->
11 <context id="DB2Tables" targetRuntime="MyBatis3">
12 <commentGenerator>
13 <property name="suppressAllComments" value="true" />
14 </commentGenerator>
15 <jdbcConnection driverClass="com.mysql.jdbc.Driver"
16 connectionURL="jdbc:mysql://localhost:3306/mybatis"
17 userId="root"
18 password="root">
19 </jdbcConnection>
20
21 <javaTypeResolver >
22 <property name="forceBigDecimals" value="false" />
23 </javaTypeResolver>
24
25 <!-- 生成的实体类所在位置 -->
26 <javaModelGenerator targetPackage="com.zhiyou100.zhl.bean" targetProject="./src">
27 <property name="enableSubPackages" value="true" />
28 <property name="trimStrings" value="true" />
29 </javaModelGenerator>
30
31 <!-- 生成的映射文件所在位置 -->
32 <sqlMapGenerator targetPackage="com.zhiyou100.zhl.mapper" targetProject="./resources">
33 <property name="enableSubPackages" value="true" />
34 </sqlMapGenerator>
35
36 <!-- 生成的Dao文件所在位置 -->
37 <javaClientGenerator type="XMLMAPPER" targetPackage="com.zhiyou100.zhl.dao" targetProject="./src">
38 <property name="enableSubPackages" value="true" />
39 </javaClientGenerator>
40
41 <!-- 某张表与实体类的对象关系
42 schema:该表所在的数据库
43 tableName:表名
44 domainObjectName:实体类名
45 -->
46 <table schema="mybatis" tableName="users" domainObjectName="Users" enableCountByExample="false" enableDeleteByExample="false" enableUpdateByExample="false" enableSelectByExample="false">
47 <property name="useActualColumnNames" value="true"/>
48 <generatedKey column="ID" sqlStatement="DB2" identity="true" />
49 <columnOverride column="DATE_FIELD" property="startDate" />
50 <ignoreColumn column="FRED" />
51 <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />
52 </table>
53
54 </context>
55 </generatorConfiguration>
3.获取并运行generator文件



最后运行此代码,即可生成bean,dao,xml映射文件。
Mybatis的逆向工程(generator)的更多相关文章
- mybatis的逆向工程
mybatis的逆向工程是很大的减少了程序员对代码的编写工作,由于mybatis是半自动的sql语句使用,我们在项目中一般都是采用逆向工程来生成mybatis的文件,mapper接口相当于我们平常所说 ...
- Mybatis(七) mybatis的逆向工程的配置详解
还是觉得看书学习有意思~嘿嘿.今天把mybatis给结束掉. --WH 一.什么是逆向工程? 简单点说,就是通过数据库中的单表,自动生成java代码. Mybatis官方提供了逆向工程,可以针对单表自 ...
- mybatis 的逆向工程
1 逆向工程 1.1 什么是逆向工程 mybaits需要程序员自己编写sql语句,mybatis官方提供逆向工程 可以针对单表自动生成mybatis执行所需要的代码(mapper.Java ...
- Mybatis【逆向工程,缓存,代理】知识要点
前言 本文主要讲解Mybatis的以下知识点: Mybatis缓存 一级缓存 二级缓存 与Ehcache整合 Mapper代理 使用Mapper代理就不用写实现类了 逆向工程 自动生成代码 Mybat ...
- Mybatis学习(七)————— mybatis的逆向工程的配置详解
一.什么是逆向工程? 简单点说,就是通过数据库中的单表,自动生成java代码. Mybatis官方提供了逆向工程,可以针对单表自动生成mybatis代码(mapper.java\mapper.xml\ ...
- 【MyBatis学习15】MyBatis的逆向工程生成代码
1. 什么是逆向工程 mybatis的一个主要的特点就是需要程序员自己编写sql,那么如果表太多的话,难免会很麻烦,所以mybatis官方提供了一个逆向工程,可以针对单表自动生成mybatis执行所需 ...
- 创建mybatis的逆向工程
1.mybatis的逆向工程(我使用的是maven仓库创建) 工作原理:反向工程(通过数据库中的表和字段信息去生成对应的增删改查方法) 其实就是一个自动生成工具 生成实体类(pojo)和映射文件(ma ...
- MyBatis框架——逆向工程
什么是逆向工程? 逆向工程师MyBatis提供的一种自动化配置方案,针对数据表自动生成MyBatis所需的各种资源,包括实体类.Mapper接口.Mapper.xml,但是逆向工程的缺陷在于只能针对单 ...
- Mybatis的逆向工程与延迟加载
Mybatis 的逆向工程 Mybatis是一个半自动化的ORM框架,SQL语句需要要开发者自己定义,SQL定义在Mapper.xml中,与对应的Mapper接口对应 实体类 接口 Mapper.xm ...
- Mybatis的逆向工程以及Example的实例函数及详解
Mybatis-generator是Mybatis的逆向工程 (根据数据库中的表生成java代码) Mybatis的逆向工程会生成实例及实例对应的example,example用于添加条件,相当于w ...
随机推荐
- OpenCvSharp inputs[0].size[1] % blobs[0].size[1] == 0
报错代码如图 详细错误 未处理 OpenCvSharp.OpenCVException HResult=-2146233088 Message=inputs[0].size[1] % blobs[0] ...
- Could not create connection to database server.Attempted reconnect 3 times .Giving up 解决
错误信息 Could not create connection to database server.Attempted reconnect 3 times .Giving up. message ...
- BlockQNN:NASNet同期,商汤提出block-wise版的MetaQNN | CVPR 2018
作为NASNet的同期论文,BlockQNN同样地将目光从整体网络转换到了block-wise,整体思路大概是MetaQNN的block版,增加了一些细节地小修改.配合Early Stop Strat ...
- JS实现打开报表时默认为最后一次查询参数
问题描述 普通报表在打开时希望参数面板中的参数控件的值可以默认是上一次页面关闭前最后一次查询所选择的值. 解决方案 每次在页面关闭时将参数值保存到浏览器缓存中(适用用非FS平台),或每次点击查询后将参 ...
- #链表#洛谷 3794 签到题IV
题目 给出一个长度为\(n\)的数列\(a\),求 \[\sum_{i=1}^n\sum_{j=i}^n[\gcd(a_{i\sim j})\;xor\;or(a_{i\sim j})=k] \] 分 ...
- Java 文件处理完全指南:创建、读取、写入和删除文件详细解析
Java 文件操作 文件处理简介 文件处理是任何应用程序的重要部分.Java 提供了许多用于创建.读取.更新和删除文件的方法. Java 文件处理 Java 中的文件处理主要通过 java.io 包中 ...
- c++ 暂停2秒,等待2秒
std::chrono::milliseconds stopTime(2000); std::this_thread::sleep_for(stopTime);
- 动态库 DLL 封装四:对dll二次封装,开放回调函数,并减少回调函数中参数个数
背景: 我需要对一个dll进行二次封装,其中有一个接口,里面的参数需要传回调函数. 需求: 这个回调函数,我需要开放出去,并且减少回调函数参数的个数 示例: // 回调原型 VOID __stdcal ...
- 实验1 c语言开发环境使用和数据类型 运算符 表达式
#include<stdio.h> #include<stdlib.h> int main() { printf(" O\n"); printf(" ...
- 如何用vsftpd实现用户不同权限:只能下载,可上传,管理权限等 [仅供参考未亲测]
如何用vsftpd实现用户不同权限:只能下载,可上传,管理权限等 2007-01-29 10:20:09 分类: LINUX 前提条件: 必须安装包:vsftpd-2.0.1-5 ...