使用官方网站的mapper自动生成工具mybatis-generator-core-1.3.2来生成po类和mapper映射文件。

一、mapper生成配置文件

在generatorConfig.xml中配置mapper生成的详细信息,注意以下几点:

1、添加要生成的数据库表

2、po文件所在包路径

3、mapper文件所在包路径

示例:

 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 <generatorConfiguration>
 6     <!--数据库驱动 -->
 7     <!-- 如果IDE(eclipse或者idea) 项目里导入了jar包,那么就不需要配置了jar包的绝对路径了 <classPathEntry
 8         location="e:/project/mybatis/lib/mysql-connector-java-5.0.8-bin.jar"/> -->
 9     <context id="DB2Tables" targetRuntime="MyBatis3">
10         <commentGenerator>
11             <property name="suppressDate" value="true" />
12             <property name="suppressAllComments" value="false" />
13         </commentGenerator>
14         <!--数据库链接地址账号密码 -->
15         <jdbcConnection driverClass="com.mysql.jdbc.Driver"
16             connectionURL="jdbc:mysql://localhost/travel" userId="root"
17             password="root">
18         </jdbcConnection>
19         <javaTypeResolver>
20             <property name="forceBigDecimals" value="false" />
21         </javaTypeResolver>
22         <!--生成Model类存放位置 -->
23         <javaModelGenerator targetPackage="po"
24             targetProject="src">
25             <property name="enableSubPackages" value="false" />
26             <property name="trimStrings" value="true" />
27         </javaModelGenerator>
28         <!--生成映射文件存放位置 -->
29         <sqlMapGenerator targetPackage="mapper"
30             targetProject="src">
31             <property name="enableSubPackages" value="false" />
32         </sqlMapGenerator>
33         <!--生成Dao类存放位置 -->
34
35         <javaClientGenerator type="XMLMAPPER"
36             targetPackage="mapper" targetProject="src">
37             <property name="enableSubPackages" value="false" />
38         </javaClientGenerator>
39         <!--生成对应表及类名 -->
40         <table tableName="cars" domainObjectName="Category"
41             enableCountByExample="false" enableUpdateByExample="false"
42             enableDeleteByExample="false" enableSelectByExample="true"
43             selectByExampleQueryId="false">
44         </table>
45         <table tableName="flights"></table>
46         <table tableName="hotels"></table>
47         <table tableName="reservations"></table>
48         <table tableName="customers"></table>
49         <!-- <table tableName="product_" domainObjectName="Product" enableCountByExample="false"
50             enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"
51             selectByExampleQueryId="false"></table> -->
52     </context>
53 </generatorConfiguration>

View Code

二、使用java类生成mapper文件

 1 package test;
 2
 3 import java.io.File;
 4 import java.util.ArrayList;
 5 import java.util.List;
 6
 7 import org.mybatis.generator.api.MyBatisGenerator;
 8 import org.mybatis.generator.config.Configuration;
 9 import org.mybatis.generator.config.xml.ConfigurationParser;
10 import org.mybatis.generator.internal.DefaultShellCallback;
11
12 public class GenerateMap {
13
14     public void generator() throws Exception{
15
16         List<String> warnings = new ArrayList<String>();
17         boolean overwrite = true;
18         //指定 逆向工程配置文件
19         File configFile = new File("generateConfig.xml");
20         ConfigurationParser cp = new ConfigurationParser(warnings);
21         Configuration config = cp.parseConfiguration(configFile);
22         DefaultShellCallback callback = new DefaultShellCallback(overwrite);
23         MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config,
24                 callback, warnings);
25         myBatisGenerator.generate(null);
26
27     }
28     public static void main(String[] args) throws Exception {
29         try {
30             GenerateMap generatorSqlmap = new GenerateMap();
31             generatorSqlmap.generator();
32         } catch (Exception e) {
33             e.printStackTrace();
34         }
35
36     }
37
38 }

View Code

运行程序后,自动生成的po类和mapper文件:

转载于:https://www.cnblogs.com/ustc-anmin/p/10482263.html

Mybatis逆向工程使用方法相关推荐

  1. Mybatis逆向工程创建方法

    Mybatis逆向工程创建方法 1.首先利用数据库的可视化工具新建一张表. 说明:这里id可以用int,但是用varchar类型更安全 2.打开IDEA新建一个项目. 3.导入pom.xml所需要的依 ...

  2. IDEA中Mybatis逆向工程使用方法

    1.首先创建一个Spring Boot项目 工程目录如下所示: 2..添加maven依赖 <!--mysql依赖--> <dependency><groupId>m ...

  3. mybatis逆向工程配置文件怎么再偷懒(懒出天际)

    使用mybatis逆向工程时,需要在逆向工程配置文件那里指定要对那些表进行逆向工程,如果数据表很多的话,一个一个地写有点麻烦,为什么不自动生成这些XML字段呢 (我的需求是,将数据表首字母大写,然后下 ...

  4. mybatis 逆向工程使用姿势不对,把表清空了,心里慌的一比,于是写了个插件。

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:又一程序员进了ICU:压垮一个家庭,一张结算单就够 个人原创100W+访问量博客:点击前往,查看更多 荒腔走板 ...

  5. MyBatis 逆向工程(MyBatis 自动生成接口以及xml)的使用

    刚学MyBatis逆向工程(还以为要反汇编呢.....) MyBatis逆向工程 个人理解就是链接数据库自动生成相关的增删改查相关的类 以及xml文件 (其中有一些不足 应该就是多表链接的问题需要自己 ...

  6. Mybatis 逆向工程使用姿势不对文档全被清空,一怒之下写了个插件……

    作者 | why技术 责编 | 王晓曼 来源 | why技术 荒腔走板 时间过的真是快,一周又要结束了.那么,你比上周更博学了吗?先来一个简短的荒腔走板,给冰冷的技术文注入一丝色彩. 上面这张照片是我 ...

  7. 使用IDEA在Maven中创建MyBatis逆向工程以及需要注意的问题(入门)

    逆向工程简介: mybatis官方提供逆向工程,可以针对单表自动生成mybatis执行所需要的代码(mapper.java.mapper.xml.pojo-),可以让程序员将更多的精力放在繁杂的业务逻 ...

  8. 运行多次mybatis逆向工程时,xml重复生成多次数据库表配置的问题

    运行多次mybatis逆向工程时,xml重复生成多次数据库表配置的问题 1.第二次运行逆向工程的工具时发现mapper目录下的xml文件里出现重复的配置,如下图 2.原因 可能你的数据库表命名格式不是 ...

  9. IDEA版本的Mybatis逆向工程使用攻略

    idea版本的Mybatis逆向工程开发(自动生成实体类层,mapper文件,dao层) 一.使用逆向工程开发概述 今天早上打算做一个spring+springmvc+mybatis的项目,然后感觉这 ...

最新文章

  1. on a null object reference 问题的解决办法
  2. DOM性能瓶颈与Javascript性能优化
  3. 三个打印函数printf()/sprintf()/snprintf()区别
  4. 我为什么要学习C++反汇编
  5. git 重新关联远程仓库地址
  6. An Introduction to Our Code Breaking Team
  7. List,Set和Map详解及其区别和他们分别适用的场景
  8. 个性签名设计软件_佩服!我用Python设计了一个签名软件
  9. 三维重建 几何方法 深度学习_基于深度学习的三维重建算法:MVSNet、RMVSNet、PointMVSNet、Cascade系列...
  10. 计算机完成逻辑运算的原理,计算机组成原理2.5.1逻辑运算.ppt
  11. eclipse java类图_eclipse中。green UML 自动生成类图
  12. delphi7 增加管理员权限_EHR系统的权限设计
  13. QQ、微信、QQ浏览器UserAgent
  14. 985 211 PHP,部分985、211高校考研报录比汇总!
  15. 清华胡宇迪教授谈关于爱情、关于伴侣、关于承诺、关于人生、关于友情、关于微笑、关于生活、关于幸福
  16. 靠谱的录屏软件 + mp4格式转换软件
  17. vue项目对接钉钉企业内部H5微应用
  18. Linux命令--arp--使用/实例
  19. MDCC 2014移动开发者大会 小礼品展商活动
  20. 易中天品汉代风云人物05:韩信被杀之谜

热门文章

  1. 【CCF】201503-1图像旋转
  2. jdbc原子事务的实现
  3. python3.7.3安装教程和配置idle_python 3.7.0 安装配置方法图文教程
  4. 深度学习的实用层面 —— 1.9 正则化输入
  5. 基于随机响应机制的本地差分隐私【谷歌】论文笔记
  6. 网络爬虫相关程序学习(包含jar包等)---各大网站网络爬虫
  7. matlab中关于程序运行的快捷键
  8. 基于射影不变量的视野分界线划分算法
  9. Matlab一个窗口中绘制多个图形
  10. c语言终极面试宝典 pdf,C语言终极面试--编程