MyBatis-Plus介绍与整合步骤
MyBatis-Plus说明
-
MyBatis-Plus(简称MP)是一个MyBatis的增强工具
-
自动实现Mapper CRUD操作,极致提高数据库开发效率
-
MP在MyBatis的基础上只做增强不做改变
MyBatis-Plus整合三部曲
pom引入mybatis-plus依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>3.4.0</version>
</dependency>
Spring XML更改配置SqlSessionFactory实现类
<!-- <bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sessionFactory">-->
<bean class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean" id="sessionFactory">
mybatis-config.xml增加MP分页插件
<plugins>
<plugin interceptor="com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor"/>
</plugins>
MyBatis-Plus整合三部曲:

创建实体类,@TableName/@TableId/@TableField实现映射
@TableName("test")//说明实体对应那张表
public class Test {
//说明这个属性对应字段中的主键我,type值为自增
@TableId(type = IdType.AUTO)
@TableField("id")//说明属性对应哪个字段
private Integer id;
////如果字段名与属性名相同或者符合驼峰命名转换规则,则TableField可省略
// @TableField("content")
private String content;
创建Mapper接口继承BaseMapper,创建Mapper XML
public interface TestDao extends BaseMapper<Test> {
//自定义示例方法
void insetSample();
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="top.xiongmingcai.restful.dao.TestDao">
<insert id="insetSample">
insert into test(content) values ('测试内容')
</insert>
</mapper>
开发时注入Mapper对象,通过内置API实现CRUD操作
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:applicationContext.xml"})
public class TestDaoTest {
@Resource
private TestDao testDao;
@org.junit.Test
public void insetSample() {
testDao.insetSample();//兼容自定义mapper方法
}
//测试继承 MyBateis-Plus BaseMapper 方法
@org.junit.Test
public void insert() {
Test test = new Test();
test.setContent("mybatis plus test");
int insert = testDao.insert(test);
System.out.println("更新多少行?" + insert);
}
@org.junit.Test
public void testUpdateById() {
Test test = testDao.selectById(63);
test.setContent("mybatis plus test updateById");
testDao.updateById(test);
}
@org.junit.Test
public void testDeleteById() {
testDao.deleteById(63);
}
@org.junit.Test
public void name() {
//查询条件构造器
QueryWrapper<Test> queryWrapper = new QueryWrapper<>();
//相等查询方法
// queryWrapper.eq("id",64);
// 大于查询方法
queryWrapper.gt("id", 64);
List<Test> testList = testDao.selectList(queryWrapper);
System.out.println(testList);
}
}
MyBatis-Plus BaseMapper 接口核心API

MyBatis-Plus 核心注解

MyBatis-Plus介绍与整合步骤: 6. 使用分页插件对数据分页 · MingCaiXiong/spring-learn@f1b9166