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

历史文章(文章累计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 {    }

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 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

(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


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部