mybatis的逆向工程自动生成代码
参考文献:https://blog.csdn.net/yerenyuan_pku/article/details/71909325
逆向工程:
MyBatis需要程序员自己编写sql,如果表太多的话,会很麻烦。所以mybatis官方提供了一个逆向工程,可以针对单表自动生成mybatis执行所需要的代码(包括mapper.xml、mapper.java、po..)。通过数据库的表生成代码,这个真的是很方便,感觉前几天看了那么久的mybatis整合的我有点傻。。
目录结构
导入需要的jar包:
mybatis-generator-core-1.3.5.jar
- 配置逆向工程的配置文件
mbg.xml
<?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>
<context id="DB2Tables" targetRuntime="MyBatis3">
<!-- 自动生成的代码中不要注释 -->
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!-- 配置数据库连接 -->
<jdbcConnection
driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/test?serverTimezone=GMT%2B8"
userId="root"
password="mysql">
</jdbcConnection>
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- 指定javaBean生成的位置 -->
<javaModelGenerator
targetPackage="cn.cws6.bean"
targetProject=".\src\main\java">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- 指定sql映射文件生成的位置 -->
<sqlMapGenerator
targetPackage="mapper"
targetProject=".\src\main\resources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 指定dao接口生成的位置,mapper接口 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="cn.cws6.dao"
targetProject=".\src\main\java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!-- table指定每个表的生成策略 -->
<table tableName="users" domainObjectName="users"></table>
<table tableName="employee" domainObjectName="employee"></table>
</context>
</generatorConfiguration>
- 执行代码
MBGTest.java
package cn.cws6.test;
import java.io.File;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.exception.InvalidConfigurationException;
import org.mybatis.generator.exception.XMLParserException;
import org.mybatis.generator.internal.DefaultShellCallback;
public class MBGTest {
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);
}
}
运行之后,刷新一下,会发现很多代码已经生成。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
mybatis开发Dao
参考文献:https://blog.csdn.net/u013036274/article/details/55668317 原始dao方式 需要写dao接口和dao实现类。 创建dao接口:UserDao.java package cn.itcast.mybatis.dao; import cn.itcast.mybatis.po.Employee; public interface UserDao { public Employee findUserById(int id) throws Exception; public void insertUser(Employee employee) throws Exception; public void deleteUser(int id) throws Exception; } 创建dao实现类:UserDaoImpl.java package cn.itcast.mybatis.dao; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.se...
-
下一篇
6月19日云栖精选夜读丨优酷世界杯高清直播背后,一场技术升级内容产业的浪潮
作为历史上首家拿下世界杯直播权的主流视频平台,优酷世界杯直播成功首秀的背后由优酷自研的“智能媒体大脑”、阿里云密集的CDN节点和巨量带宽储备支撑,实质上是一场围绕内容产业的技术升级浪潮。 热点热议 优酷世界杯高清直播背后,一场技术升级内容产业的浪潮 作者:优小酷 业界 | 复杂出行场景下,滴滴如何将AI融入地图系统 作者:技术小能手 发表在:大数据文摘 Science重磅:无需标注数据,DeepMind新研究让机器“脑补”立体世界! 作者: 技术小能手 发表在: 大数据文摘 知识整理 MySQL多线程并发调优 作者: zuozhao 发表在:阿里云存储服务 Nginx反向代理以及负载均衡配置 作者:超人归来007 MobPush推送实现解析 作者:皮皮酱ye 一小时神经网络从入门到精通(放弃) 作者:imhy Java并发编程笔记之ConcurrentLinkedQueue源码探究 作者:狂小白 美文回顾 日志服务支持Shard自动分裂 作者: suntingtao 发表在: 阿里云存储服务 Linux 7下MySQL自启动配置(glibc) 作者: leshami Docker S...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Dcoker安装(在线仓库),最新的服务器搭配容器使用
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2全家桶,快速入门学习开发网站教程
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- MySQL数据库在高并发下的优化方案
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作