人一能之,己百之;人十能之,己千之。——《中庸》
今天踩到一个坑,使用springboot
单元测试时插入数据回滚了
最后发现原来需要在测试类上面加上@Rollback(false)
就可以了
package com.ruben;/** * @ClassName: MybatisPlusDemo * @Date: 2020/11/9 0009 20:51 * @Description: */ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruben.dao.MpUserMapper; import com.ruben.pojo.dataObject.UserDataObject; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.annotation.Rollback; import org.springframework.util.SimpleIdGenerator; import javax.annotation.Resource; import java.util.List; import java.util.UUID; import java.util.stream.Collectors; /** * @ClassName: MybatisPlusDemo * @Description: 我还没有写描述 * @Date: 2020/11/9 0009 20:51 * * * @author: <achao1441470436@gmail.com> * @version: 1.0 * @since: JDK 1.8 */ @SpringBootTest @Rollback(false) public class MybatisPlusDemo { @Resource private MpUserMapper mpUserMapper; @Test public void insert() { mpUserMapper.insert(UserDataObject.builder().id(new SimpleIdGenerator().generateId().variant()).username("Jack").password(UUID.randomUUID().toString()).build()); } @Test public void test() { IPage<UserDataObject> page = mpUserMapper.selectPage(new Page<>(1, 2), Wrappers.lambdaQuery(UserDataObject.builder().build())); System.out.println(page); LambdaQueryWrapper<UserDataObject> wrapper = Wrappers.lambdaQuery(UserDataObject.builder().build()); // 取得用户ids List<Integer> userIds = page.getRecords().stream().map(UserDataObject::getId).collect(Collectors.toList()); // 根据ids用IN查询 wrapper.in(UserDataObject::getId, userIds) // 并且 .and(w -> w.like(UserDataObject::getUsername, "achao").or(wr -> wr.like(UserDataObject::getUsername, "Achao"))); page = mpUserMapper.selectPage(new Page<>(1, 2), wrapper); System.out.println(page); } }