逆向工程:(通过表自动生成实体类和映射文件)

1.导入mybatis-generator-core-1.3.2.jar的jar包

2.在src下创建并编写配置文件,如下,

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 <generatorConfiguration>
 6  <context id="DB2Tables" targetRuntime="MyBatis3">
 7   <commentGenerator>
 8    <!--
 9                 suppressAllComments属性值:
10                     true:自动生成实体类、SQL映射文件时没有注释
11                     true:自动生成实体类、SQL映射文件,并附有注释
12               -->
13    <property name="suppressAllComments" value="true" />
14   </commentGenerator>
15   <!-- 数据库连接信息 -->
16   <jdbcConnection driverClass="com.mysql.jdbc.Driver"
17    connectionURL="jdbc:mysql:///MyBatis?serverTimezone=UTC"
18 userId="root"  password="root">
19   </jdbcConnection>
20   <!--
21             forceBigDecimals属性值:
22                 true:把数据表中的DECIMAL和NUMERIC类型,
23 解析为JAVA代码中的java.math.BigDecimal类型
24                 false(默认):把数据表中的DECIMAL和NUMERIC类型,
25 解析为解析为JAVA代码中的Integer类型
26         -->
27   <javaTypeResolver>
28    <property name="forceBigDecimals" value="false" />
29   </javaTypeResolver>
30   <!--
31             targetProject属性值:实体类的生成位置
32             targetPackage属性值:实体类所在包的路径
33         -->
34   <javaModelGenerator targetPackage="com.offcn.entity"
35                              targetProject=".\src">
36    <!-- trimStrings属性值:
37                 true:对数据库的查询结果进行trim操作
38                 false(默认):不进行trim操作
39               -->
40    <property name="trimStrings" value="true" />
41   </javaModelGenerator>
42   <!--
43             targetProject属性值:SQL映射文件的生成位置
44             targetPackage属性值:SQL映射文件所在包的路径
45         -->
46   <sqlMapGenerator targetPackage="com.offcn.mapper"
47 targetProject=".\src">
48   </sqlMapGenerator>
49   <!-- 生成动态代理的接口  -->
50   <javaClientGenerator type="XMLMAPPER" targetPackage="com.offcn.mapper" targetProject=".\src">
51   </javaClientGenerator>
52   <!-- 指定数据库表  -->
53   <table tableName="student"> </table>
54   <table tableName="studentcard"> </table>
55   <table tableName="studentclass"> </table>
56  </context>
57 </generatorConfiguration>

3.有了自动生成需要的配置文件generator.xml,就可以编写自动生成的相关代码,如下:

MyBatis_Generator.java

 1 public class Generator {
 2     public static void main(String[] args) throws Exception {
 3         File f = new File("src/generator.xml");
 4           List<String> warnings = new ArrayList<String>();
 5           ConfigurationParser cp = new ConfigurationParser(warnings);
 6           Configuration config = cp.parseConfiguration(f);
 7           DefaultShellCallback callBack = new DefaultShellCallback(true);
 8           MyBatisGenerator generator = new MyBatisGenerator(config, callBack, warnings);
 9           generator.generate(null);
10     }
11 }

转载于:https://www.cnblogs.com/man-tou/p/11365884.html

09.MyBatis的逆向工程相关推荐

  1. MyBatis-学习笔记09【09.Mybatis的多表操作】

    Java后端 学习路线 笔记汇总表[黑马程序员] MyBatis-学习笔记01[01.Mybatis课程介绍及环境搭建][day01] MyBatis-学习笔记02[02.Mybatis入门案例] M ...

  2. MyBatis的逆向工程工具,自动生成数据库对应的POJO实体类、mapper接口、增删改查mapper.xml文件

    下载MyBatis的逆向工程工具,并解压缩到一个不包含中文字符的文件夹下,我直接放到了D盘下,下载地址:MyBatis逆向工程工具下载 如何使用MyBatis的逆向工程工具 下载之后使用idea在一个 ...

  3. Mybatis Generator 自动生成数据库XML(Mybatis Generator 逆向工程)

    Mybatis Generator 逆向工程自动生成XML 1.MyBatis Generator简单介绍: (1)MyBatis Generator 会生成: Dao,Model,Mapping基础 ...

  4. Mybatis的逆向工程,MySQL8的数据库,8.0.11驱动的逆向工程的坑的解决方法

    Mybatis的逆向工程,MySQL8的数据库,8.0.11驱动的逆向工程的坑的解决方法 参考文章: (1)Mybatis的逆向工程,MySQL8的数据库,8.0.11驱动的逆向工程的坑的解决方法 ( ...

  5. 使用mybatis的逆向工程易出现的错误

    mybatis使用逆向工程出现重复错误 异常报告: Error creating bean with name 'org.mybatis.spring.SqlSessionFactoryBean#0' ...

  6. MyBatis的逆向工程之奢华尊享版

    MyBatis的逆向工程之奢华尊享版 逆向工程的配置文件 generatorConfig.xml 将targetRuntime修改为:targetRuntime="MyBatis3" ...

  7. 关于mybatis的逆向工程中分页配置

    关于mybatis的逆向工程中分页配置 因为在使用PageHelper插件的时候出现了异常的问题,所以考虑在数据库查询的时候直接进行分页操作,也就是在配置中添加limit,首先把我遇到的分页问题描述一 ...

  8. IDEA 中使用 MyBatis Generator 逆向工程出现运行成功但是没有生成相应的文件

    记录一个 MyBatis Generator 逆向工程出现运行成功但是没有生成相应的文件问题. 我这里使用的是main方法运行,在出现运行成功没有报错但是也没有生成对应的文件,把下面这一段代码加上运行 ...

  9. mybatis的逆向工程是什么?

    1.mybatis作用 mybatis的作用是在web项目中提供一种通过书写mapper.xml文件就能访问数据库的功能,简化了书写链接数据库的代码(如:DataAccess类的编写). 2.myba ...

最新文章

  1. 大数据系列6:HBase – 基于Hadoop的分布式数据库
  2. [ActiveMQ]初识ActiveMQ
  3. 装linux系统时键盘用不了怎么办_图吧垃圾佬的LINUX体验
  4. 华为鸿蒙os再见了安卓,再见了安卓!华为鸿蒙OS 2.0正式登场,开机只需19秒
  5. 京东白条要上征信了!你用还是不用
  6. LeetCode 361. 轰炸敌人(前缀和DP)
  7. 【LeetCode笔记】169. 多数元素(Java、摩尔投票法、哈希表)
  8. linux软件读取不到空间,Linux下Oracle软件、数据文件等所在的磁盘分区空间不足的解决思路...
  9. 智能手机前景 光芒万丈
  10. 图像锐化拉普拉斯算子matlab,Matlab图像锐化-Sobel,Laplacian算子 实验教程
  11. 第五节:STM32输入捕获(用CubeMX学习STM32)
  12. 文本数据增强(data augmentation)textattack使用
  13. python编码器用什么意思_通常提到的编码器是干什么用的
  14. 验证码java如何实现_怎样用java实现验证码
  15. 华为网络工程师终极面试题
  16. 软件工程——软件结构图设计(变换分析设计、事务分析设计、混合流设计)
  17. Scheme 语言概要(下)
  18. RoadMap:面向自动驾驶视觉定位的轻量级语义地图(ICRA2021)
  19. 基于smart_rtmp直播,最简单的部署手册
  20. Geekban极客班 第三周

热门文章

  1. Utility.cpp的函数
  2. python相关知识介绍一种理财方法_我是如何使用python来确定理财策略的
  3. 根据大小分割大文本_基于深度学习的图像分割在高德地图的实践
  4. python opencv2_python opencv2 api
  5. LeetCode DD-2020006. 简单游戏(前缀和)
  6. 04.卷积神经网络 W4.特殊应用:人脸识别和神经风格转换(作业:快乐屋人脸识别+图片风格转换)
  7. LeetCode 755. 倒水(模拟)
  8. LeetCode MySQL 1174. 即时食物配送 II
  9. LeetCode 543. 二叉树的直径(DFS)
  10. python3经典实例_Python3十大经典错误及解决办法