逆向工程

一、创建逆向工程

  1. 创建依赖pom.xml
    <packaging>jar</packaging><!-- 依赖MyBatis核心包 -->
    <dependencies><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.7</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.37</version></dependency>
    </dependencies><!-- 控制Maven在构建过程中相关配置 -->
    <build><!-- 构建过程中用到的插件 --><plugins><!-- 具体插件,逆向工程的操作是以构建过程中插件形式出现的 --><plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.0</version><!-- 插件的依赖 --><dependencies><!-- 逆向工程的核心依赖 --><dependency><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-core</artifactId><version>1.3.2</version></dependency><!-- 数据库连接池 --><dependency><groupId>com.mchange</groupId><artifactId>c3p0</artifactId><version>0.9.2</version></dependency><!-- MySQL驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.8</version></dependency></dependencies></plugin></plugins>
    </build>
    
  2. BMG配置文件generatorConfig.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE generatorConfigurationPUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
    <generatorConfiguration><!--targetRuntime: 执行生成的逆向工程的版本MyBatis3Simple: 生成基本的CRUD(清新简洁版)MyBatis3: 生成带条件的CRUD(奢华尊享版)--><context id="DB2Tables" targetRuntime="MyBatis3"><!-- 1.数据库的连接信息 --><jdbcConnection driverClass="com.mysql.jdbc.Driver"connectionURL="jdbc:mysql://localhost:13306/mybatis"userId="root"password="123456"></jdbcConnection><!-- 2.javaBean的生成策略  trimStrings:去除字符串前后的空格--><javaModelGenerator targetPackage="com.atguigu.mybatis.pojo" targetProject=".\src\main\java"><property name="enableSubPackages" value="true" /><property name="trimStrings" value="true" /></javaModelGenerator><!-- 3.SQL映射文件的生成策略 --><sqlMapGenerator targetPackage="com.atguigu.mybatis.mapper"  targetProject=".\src\main\resources"><property name="enableSubPackages" value="true" /></sqlMapGenerator><!-- 4.Mapper接口的生成策略 --><javaClientGenerator type="XMLMAPPER" targetPackage="com.atguigu.mybatis.mapper"  targetProject=".\src\main\java"><property name="enableSubPackages" value="true" /></javaClientGenerator><!-- 5.逆向分析的表 --><!-- tableName设置为*号,可以对应所有表,此时不写domainObjectName --><!-- domainObjectName属性指定生成出来的实体类的类名 --><table tableName="t_emp" domainObjectName="Emp"/><table tableName="t_dept" domainObjectName="Dept"/></context>
    </generatorConfiguration>
    
  3. 创建逆向工程,双击该命令即可

二、QBC风格

  1. Query By Criteria,根据标准查询

    即条件都是定义好的,只需要调用像对应的方法,就可以生成标准的条件。

  2. 使用的方法
    EmpExample example = new EmpExample();
    // 使用该方法后,example对象就有了对应的条件,直接被调用即可
    example.createCriteria().andEmpNameEqualTo("张三");
    
  3. 测试
    @Test
    public void test1() {try {InputStream is = Resources.getResourceAsStream("mybatis-config.xml");SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);SqlSession sqlSession = factory.openSession(true);EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);EmpExample example = new EmpExample();// 给对象赋值对应的标准条件example.createCriteria().andEmpNameEqualTo("张三");// 在SQL语句中直接调用该对象List<Emp> empList = mapper.selectByExample(example);empList.forEach(emp -> System.out.println(emp));} catch (IOException e) {e.printStackTrace();}
    }
    

MyBatis十:逆向工程(QBC风格)相关推荐

  1. 老司机学习MyBatis之逆向工程MGB的简单使用

    一.前言 MyBatis Generator简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的根据表生成对应的映射文件,接口,以及bean类.支持基本的增删改查,以及QBC风 ...

  2. Python之pyecharts:利用pyecharts(十五种风格)绘制2018年~2020年中国互联网Top巨头近三年市值(美元)柱状图

    Python之pyecharts:利用pyecharts(十五种风格)绘制2018年~2020年中国互联网Top巨头近三年市值(美元)柱状图 目录 pyecharts(十五种风格)绘制2018年~20 ...

  3. 目前流行的装修风格_当下最流行的十大装修风格。目前主流的装修风格前十

    原标题:当下最流行的十大装修风格.目前主流的装修风格前十 随着时代的发展,装修风格也是多种多样,但对于没有装修经验的业主来说,需要提前了解一下装修风格,了解的同时选择一个适合自己的装修风格,接下来,我 ...

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

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

  5. 3年开发经验,挂在了MyBatis十八连环问上!精通MyBatis源码,有多吃香?

    在 Java 相关岗位面试中,精通 MyBatis 真的非常吃香!它专注于 SQL 自身,是一个足够灵活的 DAO层 ORM 解决方案,而 DAO层 是每个后端程序员都绕不过去的一个话题. 搞技术的人 ...

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

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

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

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

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

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

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

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

最新文章

  1. 【转录组】如何进行序列比对?
  2. docker运行gerrit(代码审查工具)
  3. bzoj 3864: Hero meet devil [dp套dp]
  4. php开发如何测试,用thinkphp开发微信,如何测试?
  5. POJ 3617 Best Cow Line 贪心
  6. 「无中生有」计算机视觉探奇
  7. NEO从源码分析看网络通信
  8. window上安装mysql_在window上安装mysql - MySQL5.7.24 版本
  9. css在线留言星号,使用CSS 给表单必选项添加星号的实现方法
  10. boost::lower_bound相关的测试程序
  11. 最小路径和—leetcode64
  12. .NET 6 攻略大全(一)
  13. 实现贝叶斯分类器_机器学习实战项目-朴素贝叶斯
  14. Spring实现多数据源配置
  15. zabbix监控tomcat服务
  16. 190802每日一句
  17. 阿里图标css的使用中的使用方法,iconfont阿里巴巴矢量图标库的正确使用方法
  18. 信息系统基础知识---企业信息化与电子商务
  19. 折扇同构图形_独具一格!同构图形设计技法
  20. /deep/在chrome89+中出现样式混乱的问题

热门文章

  1. SAS常用基础代码例子-聚类分析
  2. 超详细教程:在Blender中打造毛毡风格角色
  3. Online Game Development in C++ 第五部分总结
  4. sessionStorage 、localStorage 与cookie 的异同点
  5. 易学是否可信?玄学是否可信?
  6. windows下python实现按键退出程序
  7. 腾讯安全科恩实验室公布全球首个5G漏洞应用实例!
  8. java 除法 进一 和舍余
  9. 从流量到增长,营销产品有何趋势?
  10. 某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,但有以下限制条件