MyBatis-Plus通用Service快速实现赠三改查[MyBatis-Plus系列] - 第489篇

本文介绍了MyBatis-Plus中的通用Service CRUD封装,包括IService接口和ServiceImpl实现类的使用,通过UserService和UserMapper举例说明,详细解释了如何进行增删改查操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

历史文章(文章累计480+)

国内最全的Spring Boot系列之一

国内最全的Spring Boot系列之二

国内最全的Spring Boot系列之三

国内最全的Spring Boot系列之四

国内最全的Spring Boot系列之五》

国内最全的Spring Boot系列之六

MyBatis-Plus快速实现增删改[MyBatis-Plus系列] - 第483篇

MyBatis-Plus实现普通查询/分页查询[MyBatis-Plus系列] - 第484篇

使用LambdaQueryWrapper再也不担心字段拼写错误了 [MyBatis-Plus系列] - 第485篇

表名注解/主键注解/字段注解/乐观锁注解[MyBatis-Plus系列] - 第486篇

悟纤:师傅,你说何为相处舒服

师傅:两个人相处的最佳状态,就是在一起很舒服,你可以做你想做的任何事情,不用去掩饰;不用去担心会在他(她)面前出丑;说话可以不过大脑;即使两个人在一起什么都不说也不会感觉尴尬。

悟纤:那么,怎么才可以让两个人相处感觉舒服呢?

师傅:产生幸福感:两个人在一起,无论在何时何地、在做什么,都能感觉到发自内心的幸福和安心。有的时候甚至是只要想起他(她),嘴角就会不自觉的上扬。

师傅:乐于付出:两个人愿意不求回报的为对方付出,当然这个付出不是言情剧里狗血的牺牲。主要是指在相处中愿意为对方做更多的事情,比如:主动承担家务、共同面对困难、生病时悉心照料陪伴等,体贴的为对方承担一部分风雨并不求回报。

师傅:共同进步:两个人在一起一种最佳的状态就是:一起努力,共同进步。愿意为了对方使自己变得更加优秀、更加强大,并能够相互匹配得上对方的优秀。只有双方前进的步伐一致,关系才能走的更远。

师傅:还有就是所谓的三观相近、为对方着想等等。

悟纤:师傅,感觉真是活到老,学到老,还有好多没学了。

师傅:学习永无止境…

悟纤:有师傅真好~ 和师傅相处就是舒服!

导读

Hi,大家好,我是悟纤。过着爱谁谁的生活,活出不设限的人生。

在前面学习了BaseMapper封装了常见的数据库增删改查操作,在实际的项目中,控制层并不会直接操作数据层,中间还有一层服务层,所以对于服务层的增删改查操作,MyBatis-Plus进行了封装:通用 Service CRUD 封装IService接口。

👇🏻👇🏻👇🏻EasyPoi实战系列

01.《MyBatis-Plus是什么以及特性[MyBatis-Plus系列]》

02.《MyBatis-Plus快速开始 [MyBatis-Plus系列]》

03.《MyBatis-Plus快速实现增删改 [MyBatis-Plus系列]》

04.《MyBatis-Plus实现普通查询/分页查询[MyBatis-Plus系列]》

05.《使用LambdaQueryWrapper再也不担心字段拼写错误了 [MyBatis-Plus系列]》

06.《表名注解/主键注解/字段注解/乐观锁注解[MyBatis-Plus系列]》

一、Service CRUD实操

通用 Service CRUD 封装IService 接口,进一步封装 CRUD 采用 get 查询单行 remove 删除 list 查询集合 page 分页 前缀命名方式区分 Mapper 层避免混淆。

建议如果存在自定义通用 Service 方法的可能,请创建自己的 IBaseService 继承 Mybatis-Plus 提供的基类。

那具体如何进行使用呢?我们拿之前的User(UserMapper)来进行讲解。

1.1 service接口继承IService

定义服务接口UserService,并且继承接口IService:

package com.kfit.user.service;import com.baomidou.mybatisplus.extension.service.IService;import com.kfit.user.model.User;/** * author:悟纤「公众号SpringBoot」 * date:2023/9/7 */public interface UserService extends IService<User> {    }

1.2 service实现类继承ServiceImpl

定义服务接口UserService的实现类UserServiceImpl,并且继承实现类ServiceImpl:

package com.kfit.user.service.impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;import com.kfit.user.mapper.UserMapper;import com.kfit.user.model.User;import com.kfit.user.service.UserService;import org.springframework.stereotype.Service;/** * author:悟纤「公众号SpringBoot」 * date:2023/9/7 */@Servicepublic class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {}

1.3测试UserService

到这里就可以测试UserService了,因为已经具备了常规的增删改查方法:

package com.kfit;import com.kfit.user.model.User;import com.kfit.user.service.UserService;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;/** * author:悟纤「公众号SpringBoot」 * date:2023/9/7 */@SpringBootTestpublic class UserServiceTest {    @Autowired    private UserService userService;    @Test    public void testSave(){        User user = new User();        user.setName("悟纤2023");        user.setEmail("bb@qq.com");        userService.save(user);    }    @Test    public void testUpdate(){        User user = new User();        user.setId(1L);        user.setName("Jone 2023");        userService.updateById(user);    }}

其它的方法,可以根据需要进行了解,常见的操作基本上都有了。

小结

本文主要介绍了Service层的CRUD,大体的使用思路是:

(1)service接口继承IService:定义一个接口如UserService,继承接口IService<T>

(2)service实现类继承ServiceImpl:定义服务接口UserService的实现类UserServiceImpl,并且继承实现类ServiceImpl。

 点赞、转发、评论,伸出你的双手666…


 

 你就是你,不一样的小蚂蚁!

我就是我,是颜色不一样的烟火。
我就是我,是与众不同的小苹果。

à悟纤学院:https://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!

SpringBoot视频:http://t.cn/A6ZagYTi

SpringBoot交流平台:https://t.cn/R3QDhU0

SpringSecurity5.0视频:http://t.cn/A6ZadMBe

ShardingJDBC分库分表:http://t.cn/A6ZarrqS

分布式事务解决方案:http://t.cn/A6ZaBnIr

JVM内存模型调优实战:http://t.cn/A6wWMVqG

Spring入门到精通:https://t.cn/A6bFcDh4

大话设计模式之爱你:https://dwz.cn/wqO0MAy7

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悟纤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值