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中查询当前数据库中的所有表空间和对应的数据文件语句命令 ------------------------------------------------------------------ ...
随机推荐
- 任务十:Flexbox 布局练习
任务目的 学习如何flex进行布局,学习如何根据屏幕宽度调整布局策略. 任务描述 需要实现的效果如效果图(点击打开)所示,调整浏览器宽度查看响应式效果,红色的文字是说明,不需要写在 HTML 中. 任 ...
- Scrum团队开发
Scrum学习心得 什么是scrum Scrum是迭代式增量软件开发过程,通常用于敏捷软件开发.Scrum包括了一系列实践和预定义角色的过程骨架.Scrum中的主要角色包括同项目经理类似的Scrum主 ...
- idea 出现 java.lang.OutOfMemoryError: PermGen space
今天在项目启动时候,刚刚启动 就 报了 Exception in thread "http-bio-8080-exec-1" 之后 出现了 java.lang.OutOfMemor ...
- Java基础之多线程详细分析
在了解多线程之前,先来了解一下进程与线程之间的关系. 进程和线程: 进程是指在系统中正在执行的一个程序,每个进程之间是独立的. 线程是进程的一个基本执行单元.一个进程要想执行任务,必须得有线程(每1个 ...
- jq重复切换类名
//重复切换类名"active"$(".probability-rules header").toggleClass("active");
- C++ virtual inheritance ZZ
虚继承 是面向对象编程中的一种技术,是指一个指定的基类,在继承体系结构中,将其成员数据实例共享给也从这个基类型直接或间接派生的其它类. 举例来说:假如类A和类B各自从类X派生(非虚继承且假设类X ...
- 十个免费的 Web 压力测试工具
本文列举了是十个免费工具,可以用来进行Web的负载/压力测试的.这样你就可以知道你的服务器以及你的WEB应用能够扛得住多少的并发量,以及网站性能. 0. Grinder – Grinder是一个开源 ...
- D3——散点图Scatterplot
散点图 //Width and height ; ; ; var dataset = [ [, ], [, ], [, ], [, ], [, ], [, ], [, ], [, ], [, ], [ ...
- Django 创建模型 激活模型 简单的使用模型
创建模型: 在你的开发环境中,已经有一个“项目” —— 已经建立起来,你将开始在上面做一些东西. 你编写的每个Django应用都是一个遵循特定约定的Python包. Django自带一个工具,它可以自 ...
- node express 跨域问题
express = require('express'); var app = express(); //设置跨域访问 app.all('*', function(req, res, next) { ...