1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
| package com.sxh;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.sxh.dao.UserMapper; import com.sxh.entity.User; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest;
import java.util.List; import java.util.Map;
@SpringBootTest public class SampleTest { @Autowired private UserMapper userMapper;
@Test public void testUpdate() { User user = new User(); printEffectRowResult("新增", userMapper.insert(user)); user.setVersion(0); printEffectRowResult("修改", userMapper.updateById(user)); user.setUserName("张三"); printEffectRowResult("修改", userMapper.updateById(user)); printEffectRowResult("删除", userMapper.deleteById(user)); printQueryResult("查询被移除的数据", userMapper.selectById(user.getUserUid())); printQueryResult("查询所有数据", userMapper.selectList(null)); printQueryResult("查询被移除的数据", userMapper.selectByMap(Map.of("user_uid", user.getUserUid(), "is_delete", 0))); printQueryResult("自定义Sql查询出被移出的数据", userMapper.selectListIncludeDelete()); }
@Test public void testQuery() { printQueryResult("查询全部数据", userMapper.selectList(null)); User query = new User(); query.setUserName("张三"); QueryWrapper<User> wrapper = new QueryWrapper<>(query); printQueryResult("以实体作为查询参数", userMapper.selectList(wrapper)); Map<String, Object> queryMap = Map.of("user_name", "张三"); printQueryResult("根据Map查询", userMapper.selectByMap(queryMap)); QueryWrapper<User> wrapper2 = new QueryWrapper<>(); wrapper2.eq("user_name", "张三").orderByDesc("create_date"); printQueryResult("条件构造查询", userMapper.selectList(wrapper2)); QueryWrapper<User> wrapper3 = new QueryWrapper<>(); wrapper3.apply("date_format(create_date, '%Y') = {0}", "2024").inSql("user_uid", "select user_uid from user where user_name like '%张%'"); printQueryResult("组装sql", userMapper.selectList(wrapper3)); QueryWrapper<User> wrapper4 = new QueryWrapper<>(); wrapper4.and(wq -> wq.eq("sex", 1)); QueryWrapper<User> wrapper5 = new QueryWrapper<>(); wrapper5.last("limit 1"); printQueryResult("结尾拼接sql", userMapper.selectList(wrapper5)); QueryWrapper<User> wrapper6 = new QueryWrapper<>(); wrapper6.select("user_uid", "user_name", "create_date"); printQueryResult("查询结果返回指定列", userMapper.selectList(wrapper6)); QueryWrapper<User> wrapper7 = new QueryWrapper<>(); wrapper7.select(User.class, info -> !info.isVersion() && !info.getColumn().equals("is_delete")); printQueryResult("查询结果排除指定列", userMapper.selectList(wrapper7)); LambdaQueryWrapper<User> lambdaQueryWrapper = Wrappers.lambdaQuery(); lambdaQueryWrapper.like(User::getUserName, "张").eq(User::getSex, 1); printQueryResult("lambda构造查询", userMapper.selectList(lambdaQueryWrapper)); }
private void printEffectRowResult(String actionName, int effectRow) { System.out.println("======================" + actionName + "======================"); if (effectRow == 0) { System.err.println("操作失败!版本号不匹配!"); } else { System.out.println("操作成功!"); } }
private void printQueryResult(String actionName, Object result) { System.out.println("============================================" + actionName + "============================================"); if (result instanceof List<?> list) { list.forEach(System.out::println); } else { System.out.println(result); } } }
|