Mybatis根据数据库中的表自动生成Bean对象与Mapper文件 (小白式教程)
示例IDE采用 IDEA
//**********************华丽的分割线****************//
1.新建一个java项目-->在Src目录下创建3个包(Package)与一个文件夹(Directory)
Package(包)-
①bean:存放自动生成的Java Bean
②mapper:存放自动生成的mapper接口与对应的.xml文件
③test:存放一个main方法用于执行自动生成操作
Directory(目录)::
lib:存放项目所需要导入的包

2.向lib导入所需的包(记得让项目关联上这4个包,教程结束处附上资源链接)

3.右击Src目录-->new-->File (新建两个配置文件db.properties与config.xml)
db.properties:用于存放链接数据库的基本配置信息
config.xml:存放Mybatis相关配置信息


配置文件代码:
db.properties:
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssm_mybatis
jdbc.username=root
jdbc.password=a123456
注:如果使用的为MySQL8.0相应的url需在后面加上allowPublicKeyRetrieval=true
即
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssm_mybatis?allowPublicKeyRetrieval=true
jdbc.username=root
jdbc.password=a123456
config.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>
<!--读取数据库配置文件-->
<properties resource="db.properties"/> <context id="Mygenerator" targetRuntime="MyBatis3"> <!-- 通过这个属性去掉自动生成的时候跟随生成的一些注释 -->
<commentGenerator><!--非必要部分-->
<!-- 去掉注释 -->
<property name="suppressAllComments" value="true"/>
<!--去掉时间戳 -->
<property name="suppressDate" value="true"/>
</commentGenerator> <!--配置数据库链接-->
<jdbcConnection driverClass="${jdbc.driver}"
connectionURL="${jdbc.url}"
userId="${jdbc.username}"
password="${jdbc.password}">
</jdbcConnection> <!-- java与jdbc数据转换 -->
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!--
javaModelGenerator java bean配置
targetpackage 输出路径
targetProject 输出项目位置
-->
<javaModelGenerator targetPackage="com.ATrose.bean" targetProject="src">
<!--enableSubPackages是否开启子包名,是否在名称后面加上scheme-->
<property name="enableSubPackages" value="false" /> <!--在set中去掉空格 (trim)-->
<property name="trimStrings" value="true" />
</javaModelGenerator> <!-- 生成的mapper.xml -->
<sqlMapGenerator targetPackage="com.ATrose.mapper" targetProject="src">
<property name="enableSubPackages" value="false" />
</sqlMapGenerator> <!-- 生成的java接口的配置 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.ATrose.mapper" targetProject="src">
<property name="enableSubPackages" value="false" />
</javaClientGenerator> <!--需要自动生成的表的表名-->
<table tableName="user"/>
<table tableName="country"/> </context>
</generatorConfiguration>
4.在test包中新建一个java类

在新建的java类中创建一个main方法 输入一下代码(或者直接全部copy)
generator.java
package com.ATrose.test; import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.internal.DefaultShellCallback; import java.io.File;
import java.util.ArrayList;
import java.util.List; public class generator {
public static void main(String[] args) throws Exception{
List<String> warnings = new ArrayList<String>();
boolean overwrite = true;
File configFile = new File("src/config.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);
}
}
5.执行main方法即可生成我们所需要的内容

//自动生成的mapper.xml

教程到此结束
//*******************华丽的分割线*********************//
所需导入的包:
链接: https://pan.baidu.com/s/1sscqW9fGllOs5jqRVyGbbg 提取码: 1zfz
Mybatis根据数据库中的表自动生成Bean对象与Mapper文件 (小白式教程)的更多相关文章
- mybits根据表自动生成 java类和mapper 文件
mybits根据表自动生成 java类和mapper 文件 我这个脑子啊,每次创建新的工程都会忘记是怎么集成mybits怎么生成mapper文件的,so today , I can't write t ...
- 第二篇 Springboot mybatis generate根据数据库表自动生成实体类、Mapper和Mapper.xml
源码链接:https://pan.baidu.com/s/1iP4UguBufHbcIEv4Ux4wDw 提取码:j6z9 目录结构如下:只需增加一个generatorConfig.xml文件和在po ...
- MyBatis 逆向工程——根据数据表自动生成model、xml映射文件、mapper接口
MyBatis Generator(MBG)的使用 MBG可以根据数据表生成对应的model.xml映射文件.mapper接口,只是简单的生成,还需要根据需求修改. 1.下载jar包 https:// ...
- mybatis 逆向工程(通过数据库表针对单表自动生成mybatis执行所需要的代码)
mybatis需要程序员自己编写sql语句,mybatis官方提供逆向工程,可以针对单表自动生成mybatis执行所需要的代码(mapper.java.mapper.xml.pojo…),可以让程序员 ...
- Idea根据表自动生成实体
Idea根据表自动生成实体: 首先说下这种方式有个缺点,就是如果表里面有日期.时间类型,那么需要手动的设置映射类型 第一步:在Idea中配置好数据库: 在Idea窗口右边,点击Database按钮 配 ...
- Go语言根据数据表自动生成model以及controller代码
手写model的用法请参考: https://www.jianshu.com/p/f5784b8c00d0 这里仅说明自动生成model文件的过程 bee generate appcode -tabl ...
- 基于querybuilder的可根据现有数据表自动生成Restful API的dotnet中间件
AutoApi 基于SqlKata Query Builder的可根据数据表自动生成Restful API的dotnet中间件 项目地址 Github Gitee 支持的数据库 MySql AutoA ...
- 通过mybatis向数据库中插入日期数据
遇到的问题: 通过mybatis向数据库中插入日期格式数据,发现只有年月日, 没有小时分钟和秒 当你想在实体类中使用java.util.Date类型,而且还想在数据库中保存时分秒时, 解决办法: 你可 ...
- Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令
Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令 ------------------------------------------------------------------ ...
随机推荐
- RoadFlowCore工作流2.8.1 更新日志
1.2.8.1更新了2.8刚发布的一些小BUG. 2.2.8.1增加了移动端,基于微信企业号或企业微信. 详细请参阅官方网站:roadflow.net
- c++ 读写结构体到文件
可以使用fwrite()将一个结构体写入文件: fwrite(&some_struct,sizeof somestruct,1,fp);对应的fread函数可以再把它读出来,此处fwrite ...
- 生命不息学习不止,前端js学习笔记(一)
引言 从毕业到年已经整整7年,期间一直从事.net开发做c/s从 c# 转到 wpf 而后又开始做b/s 用silverlight,从最开始的arcgis engine 到后来的silverlight ...
- javax.swing.JComponent 调用顺序
网上截取的,感觉挺有用,记录下来. http://bbs.csdn.net/topics/310041707 java swing 感觉好复杂啊…………一点都不想用但是作业要用到 >_<; ...
- Java—IO流 字节流
IO流(输入流.输出流),又分为字节流.字符流. 流是磁盘或其它外围设备中存储的数据的源点或终点. 输入流:程序从输入流读取数据源.数据源包括外界(键盘.文件.网络…),即是将数据源读入到程序的通信通 ...
- 如果Android的jar包导入错误,怎么修改呢?
如果jar包导入错误,怎么修改呢? 右键工程---->properties---->Java Build Path --->Libraries-->选择android-supp ...
- 四、CentOS 安装mariadb——Linux学习笔记
A)安装及配置 下载mariadb: yum -y install mariadb-server mariadb 开启mariadb服务: systemctl start mariadb.servic ...
- Shodan搜索引擎介绍
from:http://www.exploit-db.com/wp-content/themes/exploit/docs/33859.pdf 0x00 概要 这篇文章可以作为渗透测试人员和安全工作者 ...
- UID卡修改&UID锁死修复
好久没发RFID类文章,最近有小伙伴问到UID卡的问题,在这里就写一写吧. 首先是UID修改的问题,只要卡是UID卡,就都可以修改UID,首先读卡器连接电脑,卡片放到读卡器上. 然后我们要用一个工具, ...
- [原]零基础学习视频解码之安装ffmpeg
写在文章前面:ffmpeg是一个开源的编解码框架,拥有很强大的功能.但是对于如果使用其来做开发呈现着严重两极分化,大神们讨论着高深的问题,大多数像我这样的小白连门都进不去.最近无意间领会了如何入门,现 ...