(2)BaseMapper 是 MybatisPlus 内置的接口 , 它包含基本的 CRUD 方法 。
7.启动类添加 @MapperScan 注解

文章插图
8.测试
@SpringBootTestpublic class MybatisPlusDemoApplicationTests {@Resourceprivate UserMapper userMapper;@Testvoid testMybatisPlus() {for (int i = 18; i < 20; i++) {User user = new User("王小波" + i, i);userMapper.insert(user);}}}
文章插图
9.总结
我们发现只要继承 MybatisPlus 的BaseMapper , 就能完成基本的增删改查操作 , 非常方便 。

文章插图
4. 基本增删改查1.新增
User user = new User("王小波", 19);userMapper.insert(user);复制代码2.编辑根据 id 更新数据
int rows = userMapper.updateById(user);if(rows>0){System.out.println("更新成功"); }复制代码3.删除根据主键删除信息
userMapper.deleteById("152635612");复制代码根据 map 条件删除信息Map<String, Object> param = new HashMap<>();param.put("age", 18);int rows = userMapper.deleteByMap(param);if (rows > 0) {System.out.println("删除成功!");}复制代码根据 id 集合批量删除List<Integer> ids = Stream.of(110, 112, 113, 115).collect(Collectors.toList());int rows = userMapper.deleteBatchIds(ids);if (rows > 0) {System.out.println("删除成功!");}复制代码4.查询根据 id 查询
User user = userMapper.selectById(152382374);复制代码根据 map 条件查询Map<String, Object> param = new HashMap<>();param.put("age", 18);List<User> userList = userMapper.selectByMap(param);复制代码根据 id 集合批量查询List<Integer> ids = Stream.of(110, 112, 113, 115).collect(Collectors.toList());List<User> userList = userMapper.selectBatchIds(ids);复制代码5. 构造器MybatisPlus 提供了查询构造器和更新构造器用来生成带有 where 条件的 sql 语句 。(1)封装查询条件的构造器:
QueryWrapper复制代码常用查询条件:等于:eq
QueryWrapper<User> userWrapper = new QueryWrapper<>();// 查询名字是张三的用户userWrapper.eq("name","张三");List<User> userList = userMapper.selectList(userWrapper);复制代码不等于:neQueryWrapper<User> userWrapper = new QueryWrapper<>();userWrapper.ne("name","张三");// 查询名字不是张三的用户List<User> userList = userMapper.selectList(userWrapper);复制代码模糊查询:likeQueryWrapper<User> userWrapper = new QueryWrapper<>();// 模糊查询userWrapper.like("name","张");List<User> userList = userMapper.selectList(userWrapper);复制代码降序:orderByDescQueryWrapper<User> userWrapper = new QueryWrapper<>();// 模糊查询并根据 number 倒序userWrapper.like("name","张").orderByDesc("number");List<User> userList = userMapper.selectList(userWrapper);复制代码升序:orderByAscQueryWrapper<User> userWrapper = new QueryWrapper<>();// 模糊查询并根据 number 降序userWrapper.like("name","张").orderByAsc("number");List<User> userList = userMapper.selectList(userWrapper);复制代码其他常用的条件可以去官网查看相关文档 , 这里不再过多赘述:https://baomidou.com/pages/10c804/#in复制代码 
文章插图
(2)封装更新条件的构造器:
UpdateWrapper复制代码UpdateWrapper 的 where 条件和 QueryWrapper 的一样 , 只不过需要 set 值 。UpdateWrapper<User> userWrapper = new UpdateWrapper<>();userWrapper.set("name","王小波").set("age",22).eq("name","张三");复制代码6. 通用 ServiceMybatisPlus 中有一个通用的接口 Iservice 和实现类 , 封装了常用的增删改查等操作 。1.新建 service 和 实现类
UserService
/** * @Desc: * @Author: 公众号:知否技术 * @date: 下午9:57 2022/5/11 */public interface UserService extends IService<User> {}复制代码
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 思想品德教育的最终目的是培养学生良好的?从整体发展来看,中学生品德发展的关键时期大致在
- 描写山水的优美诗句小学?描写山水的优美诗句三年级
- 学困生原因分析及转化措施?对学困生转化有哪些策略
- 华侨大学|反转大瓜?00后面试被拒后,直接将公司举报到歇业,引发爆议!
- 想学画画 但没有基础?如果学画画没有基础要学多久
- 教学要受学生心理发展水平和认知特点的制约?有人认为教师不学心理学也能取得工作成绩_1
- 生科医学|研究发现睡前玩手机伤眼又折寿引网友热议:权威报告揭秘原因
- 我的教学故事教学随笔?我的教学故事100篇小学语文老师
- 环境设计是学什么的?
- 邯郸学步的故事寓意是什么?
