mysql-connector 逆向生成_回顾一下MyBatis逆向工程——自动生成代码

本文介绍了如何使用MyBatis Generator逆向工程,根据数据库表自动生成pojo、example类和mapper文件。通过创建Maven项目,添加相关依赖,编写核心代码,并配置generatorConfig.xml,实现自动化代码生成,简化开发工作。
摘要由CSDN通过智能技术生成

⭐⭐⭐⭐⭐最最最最最重要的事情:

我自己总结的Java学习的系统知识点以及面试问题,目前已经开源,会一直完善下去,欢迎建议和指导欢迎Star: https://github.com/Snailclimb/Java-Guide

前言

最近做的项目(SSM+Shiro)的数据库表已经创建完成,一共有15张表,如果我们一个个去写pojo/bean的代码以及各种sql语句的话未免太过麻烦而且很容易出错,这个时候我们就需要MyBatis逆向工程去为我们生成这些基本的东西。

先来简单的了解一下什么是逆向工程。

一 什么是逆向工程

官网解释浓缩版:

MyBatis逆向工程需要用到的就是MyBatis官方提供的MyBatis Generator(MBG)。MBG是MyBatis和iBATIS的代码生成器,它将为所有版本的MyBatis以及版本2.2.0之后的iBATIS版本生成代码。MBG对简单CRUD(增删改查)的大部分数据库操作产生重大影响。但是您仍然需要为连接查询或存储过程手动编写SQL和对象代码。

简要概括版:

创建好数据库表之后,MBG可以根据数据库表自动为您生成pojo类、example类(用于添加条件,相当where语句后面的部分 )、mapper文件。

关于Mapper接口以及Example的实例的讲解可以查看这一篇文章:《Mapper接口以及Example的实例》

https://blog.csdn.net/biandous/article/details/65630783

介绍完逆向工程是个什么东西后,接下来我们就要开始学习如何使用它了?

二 使用MyBatis逆向工程

考虑到大家的基础可能不同,所以我尽可能详细一点。

2.1 新建Maven项目并添加相关依赖

1.新建Maven项目(普通的Java项目):

0703e039cd5abd830054579fa697ff62.png

2.添加相关依赖(pom.xml):

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

mybatis-generator

sql-mapper

0.0.1-SNAPSHOT

jar

sql-mapper

http://maven.apache.org

UTF-8

log4j

log4j

1.2.17

org.mybatis.generator

mybatis-generator-core

1.3.5

mysql

mysql-connector-java

5.1.38

org.mybatis

mybatis

3.2.1

2.2 项目创建完成之后的目录结构

313c3c068715927e7d8e069dac148c53.png

2.3 MyBatis逆向工程代码编写

核心代码示例(推荐读取xml配置文件的形式,还有一种基于Java的配置这里就不做演示):

List warnings = new ArrayList();

boolean overwrite = true;

//读取xml配置文件,推荐使用这种方式

File configFile = new File("generatorConfig.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);

本项目中使用代码MyBatisGeneratorApp.java:

public class MyBatisGeneratorApp {

public void generator() throws Exception{

List warnings = new ArrayList();

boolean overwrite = true;

//指定 逆向工程配置文件

File configFile = new File("generatorConfig.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);

}

public static void main(String[] args) throws Exception {

try {

MyBatisGeneratorApp generatorSqlmap = new MyBatisGeneratorApp();

generatorSqlmap.generator();

} catch (Exception e) {

e.printStackTrace();

}

}

}

2.4 MyBatis逆向工程配置文件以及log4j配置文件编写

MyBatis逆向工程配置文件如下(注释已经解释的很详细了,我这里就不多做解释了):

/p>

PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"

"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

connectionURL="jdbc:mysql://localhost:3306/kpi_project?useSSL=false"

userId="root" password="xxx">

targetProject=".\src\main\java">

targetPackage="mapper" targetProject=".\src\main\java">

我的log4j的配置文件如下:

log4j.rootLogger=DEBUG, Console

#Console

log4j.appender.Console=org.apache.log4j.ConsoleAppender

log4j.appender.Console.layout=org.apache.log4j.PatternLayout

log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n

log4j.logger.java.sql.ResultSet=INFO

log4j.logger.org.apache=INFO

log4j.logger.java.sql.Connection=DEBUG

log4j.logger.java.sql.Statement=DEBUG

log4j.logger.java.sql.PreparedStatement=DEBUG

2.5 运行结果

pojo及example类:

561c9fb751200a8fd4df85449f2f626a.png

mapper接口及mapper.xml:

0bcbb7351d1700aabd05621a7ca91e95.png

我们已经介绍了MyBatis逆向工程以及它的使用,下面我们简单的总结与补充一下所学的知识。

三 总结

什么是逆向工程?

MBG可以根据数据库表自动为您生成pojo类、example类(用于添加条件,相当where语句后面的部分 )、mapper文件`。

如何使用逆向工程?

pom文件(添加相关jar包)->逆向工程核心代码编写->创建generatorConfig.xml配置文件(可以加上log4j日志打印配置文件)

如果你觉得我的文章对你有帮助话,欢迎关注我的微信公众号:"Java面试通关手册"(一个有温度的微信公众号,无广告,单纯技术分享,期待与你共同进步~~~坚持原创,分享美文,分享各种Java学习资源。)

60e4c974c1c6aae51920c8a84f670ee0.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值