声明:使用JDK8、枚举、lombok 、springboot2.1.0、idea
对于繁琐的xml配置,其优点也很明显:
项目部署以后,若对项目进行扩展等,直接修改XML文件既可;
另外,在mybatis的XML配置中,XML的sql 复用也尤为常见;
下面完成对Users 类做一个基础的CURD,并融合些常用的SQL片段复用,动态SQL 、枚举类型完成对数据类型以及选项限定、以及分页等;
》
1、mybatis-spring-boot-starter是什么
mybatis-spring-boot-starter 是 MyBatis 帮助我们快速集成 Spring Boot 提供的一个组件包,使用这个组件可以做到以下几点:
构建独立的应用
几乎可以零配置
需要很少的 XML 配置
1.1、 在 test 数据库创建 users 表;
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`userName` varchar(32) DEFAULT NULL COMMENT '用户名',
`passWord` varchar(32) DEFAULT NULL COMMENT '密码',
`user_sex` varchar(32) DEFAULT NULL,
`nick_name` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
创建model 、
由于users表中 user_sex 列限定性别 男和女,所以采用枚举类型进行限定;
public @Data class User implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private String userName;
private String passWord;
private UserSexEnum userSex;
private String nickName;
//
public User() {
}
public User(String userName, String passWord, UserSexEnum userSex) {
this.userName = userName;
this.passWord = passWord;
this.userSex = userSex;
}
}
创建枚举类;
package com.mybatis.neo.mybatisdemo.enums;
public enum UserSexEnum {
MAN, WOMAN
}
1.2、 配置文件
mybatis-config 配置文件;
<configuration>
<!-- 这样在使用mapper.xml 时候方便多了 -->
<typeAliases>
<typeAlias alias="Integer" type="java.lang.Integer"/>
<typeAlias alias="Long" type="java.lang.Long"/>
<typeAlias alias="HashMap" type="java.util.HashMap"/>
<typeAlias alias=