在讲逆向工程之前,本文默认你是已经了解了mybatis的基本使用,即增删改查和动态SQL语句。
二、数据库文件这里我们需要用到一个数据表文件,所以你可以通过一下的命令SQL脚本快速创建一个数据表
SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for user -- ---------------------------- DROP TABLE IF EXISTS `user`; CREATE TABLE `user` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `name` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '姓名', `age` int(11) NULL DEFAULT NULL COMMENT '年龄', `email` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '邮箱', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of user -- ---------------------------- INSERT INTO `user` VALUES (1, 'Jone', 18, 'test1@baomidou.com'); INSERT INTO `user` VALUES (2, 'Jack', 20, 'test2@baomidou.com'); INSERT INTO `user` VALUES (3, 'Tom', 28, 'test3@baomidou.com'); INSERT INTO `user` VALUES (4, 'Sandy', 21, 'test4@baomidou.com'); INSERT INTO `user` VALUES (5, 'Billie', 24, 'test5@baomidou.com'); SET FOREIGN_KEY_CHECKS = 1;三、mybatis环境迅速搭建
我们迅速创建一个maven环境,我们这里用的是weapp模板
pom.xml需要引入的依赖
junit junit4.12 test com.github.pagehelper pagehelper5.1.6 mysql mysql-connector-java5.1.10 org.mybatis mybatis3.4.6
接下来我们再resources目录下添加mapper目录、properties目录、mybatis-config.xml核心配置文件
mybaits-config.xml的配置文件信息,这里就不过多赘述,直接上文件内容
接下来就是数据库配置文件:db.propertis的配置内容
db.url=jdbc:mysql://localhost:3306/mybatis_plus?characterEncoding=utf8 db.user=root db.password=root db.driver=com.mysql.jdbc.Driver
接下来,再java目录下,创建两个包
四、创建逆向工程的配置文件:generatorConfig.xml
这个文件创建再resources目录下
直接先看整个配置文件:generatorConfig.xml
具体的分析:
1、配置文件的约束是固定的,一定要有的:
2、配置文件的根标签是
3、导入属性配置一定放在第一位:
4、指定数据库驱动的jdbc驱动jar包的位置(用的一定是jar包)
5、 context 标签是逆向工程的主要配置信息,其中id:配置名字、targetRuntime:设置生成的文件适用于那个 mybatis 版本
6、commentGenerator标签是可选标签,旨在创建class时,对注释进行控制
7、配置数据的连接信息
8、
默认情况下数据库中的 decimal,bigInt 在 Java 对应是 sql 下的 BigDecimal 类,不是 double 和 long 类型 ,使用常用的基本类型代替 sql 包下的引用类型
9、 生成java model层,targetPackage:生成的实体类所在的包; targetProject:生成的实体类所在的硬盘位置
10、mapper.xml文件的生成。targetPackage 和 targetProject:生成的 mapper.xml 文件的包和位置
11、mapper接口的生成。targetPackage 和 targetProject:生成的 mapper接口文件的包和位置
12、这里指定要生成的表 ,可以有多个
插件坐标
org.mybatis.generator mybatis-generator-maven-plugin1.3.2 true true
引入之后:
双击运行此插件就可以看到逆向生成的mapper.xml 和mapper接口啦
六、逆向工程总结
mybatis官方提供了mapper自动生成工具mybatis-generator-core来针对单表,生成PO类,以及Mapper接口和mapper.xml映射文件。针对单表,可以不需要再手动编写xml配置文件和mapper接口文件了,非常方便。美中不足的是它不支持生成关联查询。一般做关联查询,就自己单独写SQL就好了。至于生成的实体类中UserExample和Usermapper的具体使用,我们下篇文章再具体讲解,如果对你有帮助的话点个关注和赞吧!



