MyBatis逆向工程
 
MyBatis逆向工程,简称MBG。是一个专门为MyBatis框架使用者定制的代码生成器。
可以快速的根据数据库表生成对应的映射文件,接口,以及Bean类对象。
在Mybatis中,有一个可以自动对单表生成的增,删,改,查代码的插件。
它可以帮我们对比数据库表之后,生成大量的这个基础代码。
 

MyBatis逆向工程的创建

1、添加mybatis-generator-core包

2、创建MyBatis配置文件

 <generatorConfiguration>
<context id="DB2Tables" targetRuntime="MyBatis3Simple"> <!-- 去掉全部的注释 -->
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator> <!--
修改 数据库的 连接属性
-->
<jdbcConnection driverClass="数据库类型"
connectionURL="数据库连接"
userId="数据库用户名"
password="数据库密码">
</jdbcConnection> <javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver> <!--配置生成javaBean的
targetPackage javaBean的包名
targetProject 生成在哪个项目目录下
-->
<javaModelGenerator targetPackage="包.pojo" targetProject=".\项目名\src">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator> <!--
配置生成的Mapper.xml配置文件
targetPackage javaBean的包名
targetProject 生成在哪个项目目录下
-->
<sqlMapGenerator targetPackage="包.mapper" targetProject=".\项目名\src">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator> <!--
配置生成Mapper接口
targetPackage Mapper接口的包名
targetProject 生成在哪个项目目录下
-->
<javaClientGenerator type="XMLMAPPER" targetPackage="包.mapper" targetProject=".\项目名\src">
<property name="enableSubPackages" value="true" />
</javaClientGenerator> <!--
数据库一个表对应一个table标签
tableName是表名
domainObjectName 设置生成的类名
-->
<table tableName="数据库表" domainObjectName="JavaBean类名" />
<!-- <table tableName="t_book" domainObjectName="Book" />--> </context> </generatorConfiguration>

3、创建一个执行.java的文件

    public static void main(String[] args) throws IOException, XMLParserException, InvalidConfigurationException, SQLException, InterruptedException {
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);
}

4、生成的结果

5、生成测试文件测试CRUD

一个简单的MyBatis逆向工程创建完成。

总结:第一次写一个简单的MyBatis,如果有不足,还请见谅,并希望大家多多指出,本人也会不断的总结学习。

小白的MyBatis逆向工程的更多相关文章

  1. mybatis0212 mybatis逆向工程 (MyBatis Generator)

    1mybatis逆向工程 (MyBatis Generator) .1什么是mybatis的逆向工程 mybatis官方为了提高开发效率,提高自动对单表生成sql,包括生成 :mapper.xml.m ...

  2. 【JAVA - SSM】之MyBatis逆向工程的使用

    MyBatis逆向工程可以方便的从数据库中将表自动映射到JAVA POJO类,并同时生成Mapper.xml和Mapper接口,方便实用.下面介绍一下逆向工程的使用方法. 使用逆向工程,我们最好是新建 ...

  3. Mybatis 逆向工程

    Mybatis逆向工程: 推荐用Java和XML Configuration的方式生成逆向文件 Java类: package generation; import java.io.File; impo ...

  4. mybatis逆向工程

    一.背景 在实际开发中我们会自己去写mapper映射文件,接口,数据库表对应的实体类,如果需求任务比较少,咱们还可以慢慢的一个一个去写,但是这是不现实的,因为在工作中我们的任务是很多的,这时mybat ...

  5. JAVAEE——Mybatis第二天:输入和输出映射、动态sql、关联查询、Mybatis整合spring、Mybatis逆向工程

    1. 学习计划 1.输入映射和输出映射 a) 输入参数映射 b) 返回值映射 2.动态sql a) If标签 b) Where标签 c) Sql片段 d) Foreach标签 3.关联查询 a) 一对 ...

  6. mybatis框架(7)---mybatis逆向工程

    mybatis逆向工程 ​ 逆向工程的目的就是缩减了我们的开发时间.所谓mybatis逆向工程,就是mybatis会根据我们设计好的数据表,自动生成pojo.mapper以及mapper.xml. 接 ...

  7. 学习笔记01(mybatis逆向工程)

    今天来看看一个常用的小功能,就是mybatis的逆向工程.(数据库是mysql) 什么是逆向工程呢?看名字就知道反方向的一个什么工程! 其实啊,如果是平常我们自己学习实践一些小项目的时候,应该是先瞎写 ...

  8. mybatis逆向工程的注意事项,以及数据库表

    1.选择性更新,如果有新参数就更换成新参数,如果参数是null就不更新,还是原来的参数 2.mybatis使用逆向工程,数据库建表的字段user_id必须用下滑线隔开,这样生成的对象private L ...

  9. IDEA Maven项目的Mybatis逆向工程

    IDEA Maven项目的Mybatis逆向工程 1.配置.pom 如果是在多模块开发下,该文件逆向工程要生成的那个模块下的pom文件. <build> <plugins> & ...

随机推荐

  1. java+lodop+vue+热敏打印机,打印图片

    1.根据需求生成图片模板,详情见 https://www.cnblogs.com/xiaokangk/p/11151774.html 2.下载lodop并进行安装(安装步骤详情百度) 3.安装热敏打印 ...

  2. GitHub 热点速览 Vol.15:Background-Matting 让你秒变专业抠图师

    作者:HelloGitHub-小鱼干 摘要:如果要选一个词来概述上周的热点,春风拂过,应该是一个不错的词.新项目像春天冒出的枝芽,朝气蓬勃,虽然获得的 star 不如之前三维 Vim 抢眼,但胜在多姿 ...

  3. mysql--使用left join条件查询时加where条件的问题

    场景:为一个活动添加指导文件,每一个活动会对应多种指导文件类型,进入每一个活动的设置指导文件页面后所呈现的指导文件类型相同,查询时,使用指导文件类型表LEFT JOIN指导文件表,要求指导文件类型全部 ...

  4. (js描述的)数据结构[树结构1.2](12)

    1.先序遍历 2.中序遍历 3.后序遍历 4.递归调用栈详解: 详细见: https://zhuanlan.zhihu.com/p/24291978 5.删除节点操作分析: 5.代码封装 //封装二叉 ...

  5. .net 垃圾回收

    垃圾回收器帮我们处理了内存中不在使用的对象,提高了机器的性能,让开发人员轻松了很多. 你真的了解垃圾回收吗? 或许你知道垃圾回收,听说过是通过标记回收,可是怎么标记回收呢就不是很清楚了,好吧,如果不清 ...

  6. 浏览器判断兼容IE

    很多时候IE浏览器的兼容性问题总是让人很头疼,或许是样式的或许是脚本的.总之因为IE的低版本问题会引发各种各样的问题出来. function isUnderIE10() {//IE 6,7,8,9 i ...

  7. Python zipfile模块学习

    转载自https://www.j4ml.com/t/15270 import zipfile import os from zipfile import ZipFile class ZipManage ...

  8. Struts2-学习笔记系列(15)-ajax支持和JSON

    7.1stream类型的result 使用stream就无需jsp页面,直接在action想浏览者生成指定的响应 @Override public java.lang.String execute() ...

  9. Linux环境下django初入

    python -m pip install --upgrade pip 终端中 一. 创建项目: 1.django-admin startproject mysite(第一种比较好) 2.django ...

  10. **********Prometheus(三)******************

    通过centos7.x来部署Prometheus ####同步时间,否则后面监控会有异常!!!!!####### 1. 创建文件夹,上传软件包.解压并将prometheus promtool两个命令复 ...