场景
项目搭建专栏:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/column/info/37194
在MyBatisPlus介绍入门以及项目集成MyBatisPlus的基础上:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/89385833
MyBatisPlus的通用CRUD:
官方文档:https://baomidou.gitee.io/mybatis-plus-doc/#/generic-crud
MyBatis实现CRUD:
编写Mapper接口,并手动编写CRUD方法。
提供mapper.xml映射文件,并编写方法对应的SQL语句。
MyBatisPlus实现CRUD:
只需要创建Mapper接口,并继承BaseMapper接口。
实现
新建EmployeeMapper接口以及mapper包
编写mapper接口使其继承BaseMapper
package com.badao.mapper;
import com.badao.beans.Employee;
import com.baomidou.mybatisplus.mapper.BaseMapper;
/***
* 泛型指定就是当前mapper接口所操作的实体类类型
* @author Administrator
* @Description:
* @Time:2019年4月18日 下午8:36:59
*/
public interface EmployeeMapper extends BaseMapper<Employee> {
}
找到实体类Employee
添加主键策略以及制定表名
MP支持以下4种主键策略:
值 | 描述 |
---|---|
IdType.AUTO | 数据库ID自增 |
IdType.INPUT | 用户输入ID |
IdType.ID_WORKER | 全局唯一ID,内容为空自动填充(默认配置) |
IdType.UUID | 全局唯一ID,内容为空自动填充 |
这里数据中的表设计的是自增,所以在id上指定
@TableId(value="id",type=IdType.AUTO)
指定数据库中的表名,如果表名与实体类名字一致则可以不用添加,如果名字不一致则必须添加。
@TableName(value="employee")
实体bean代码:
package com.badao.beans;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
@TableName(value="employee")
public class Employee {
@TableId(value="",type=IdType.AUTO)
private Integer id;
private String name;
private String email;
private Integer gender;
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Integer getGender() {
return gender;
}
public void setGender(Integer gender) {
this.gender = gender;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
编写单元测试方法
/***
* 测试通用插入操作
*/
@Test
public void testCommonInsert() {
Employee employee = new Employee();
employee.setName("霸道插入测试");
employee.setAge(23);
employee.setEmail("[email protected]");
employee.setGender(1);
int result = employeeMapper.insert(employee);
System.out.println("************************"+result);
}
运行单元测试
查看数据库效果:
源码下载
https://download.csdn.net/download/badao_liumang_qizhi/11126580