Mybatis --- 逆向工程

Mybatis — 逆向工程

* 上一篇说到Mybatis整合Spring和SpringMVCMybatis — SSM整合
* 这一篇主要来讲解Mybatis中的逆向工程 “MBG”
注:此文为在SSM框架中MBG的使用,SpringBoot中使用MBG可参考博文

SpringBoot — Mybatis Generator

了解:

MyBatis Generator:
简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的根据表生成对应的映射文件,接口以及bean类。
支持基本的增删改查,以及QBC风格的条件查询。但是表连接、存储过程等这些复杂sql的定义需要我们手工编写。

官方文档地址:官方文档
官方工程地址:官方工程
  • MBG使用

    • 使用步骤:
      • 编写MBG的配置文件(重要几处配置)
        1)jdbcConnection配置数据库连接信息

        2)javaModelGenerator配置javaBean的生成策略

        3)sqlMapGenerator 配置sql映射文件生成策略

        4)javaClientGenerator配置Mapper接口的生成策略

        5)table 配置要逆向解析的数据表
        1. tableName:表名
        2. domainObjectName:对应的javaBean名

      • 运行代码生成器生成代码

    • 注意:

      > Context标签
      > targetRuntime=“MyBatis3“可以生成带条件的增删改查
      > targetRuntime=“MyBatis3Simple“可以生成基本的增删改查
      > 如果再次生成,建议将之前生成的数据删除,避免xml向后追加内容出现的问题。

一丶MBG配置文件
<?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>

	<!-- 
		targetRuntime="MyBatis3Simple":生成简单版的CRUD
		MyBatis3:豪华版
	 -->
  <context id="DB2Tables" targetRuntime="MyBatis3">
  	<!-- jdbcConnection:指定如何连接到目标数据库 -->
    <jdbcConnection driverClass="com.mysql.jdbc.Driver"
        connectionURL="jdbc:mysql://localhost:3306/mybatis?allowMultiQueries=true"
        userId="root"
        password="123456">
    </jdbcConnection>

    <javaTypeResolver >
      <property name="forceBigDecimals" value="false" />
    </javaTypeResolver>

	<!-- javaModelGenerator:指定javaBean的生成策略 
	targetPackage="test.model":目标包名
	targetProject="\MBGTestProject\src":目标工程
	-->
    <javaModelGenerator targetPackage="cbuc.life.bean"
    		targetProject=".\src">
      <property name="enableSubPackages" value="true" />
      <property name="trimStrings" value="true" />
    </javaModelGenerator>

	<!-- sqlMapGenerator:sql映射生成策略: -->
    <sqlMapGenerator targetPackage="cbuc.life.dao"
    	targetProject=".\conf">
      <property name="enableSubPackages" value="true" />
    </sqlMapGenerator>

	<!-- javaClientGenerator:指定mapper接口所在的位置 -->
    <javaClientGenerator type="XMLMAPPER" targetPackage="cbuc.life.dao"
    	targetProject=".\src">
      <property name="enableSubPackages" value="true" />
    </javaClientGenerator>

	<!-- 指定要逆向分析哪些表:根据表要创建javaBean -->
      <table tableName="employee" domainObjectName="Employee"></table>
      <table tableName="dept" domainObjectName="Department"></table>
  </context>
</generatorConfiguration>
二丶生成器代码
	@Test
	public void testMbg() throws Exception {
		List<String> warnings = new ArrayList<String>();
		boolean overwrite = true;
		File configFile = new File("mbg.xml");
		ConfigurationParser cp = new ConfigurationParser(warnings);
		Configuration config = cp.parseConfiguration(configFile);
		DefaultShellCallback callback = new DefaultShellCallback(overwrite);
		MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config,
				callback, warnings);
		myBatisGenerator.generate(null);
	}
点击运行便可在目录下看到自己所要生成的文件 :

在这里插入图片描述

这里就不做演示说明 , 你们可以生成后试一下可用性

END…

以上便是 MyBatis Generator 的使用, 欢迎参考交流…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值