MybatisPlus—IService接口
2024-01-09 10:16:32
目录
1. IService接口介绍
????????MybatisPlus不仅提供了BaseMapper,还提供了通用的Service接口及默认实现,封装了一些常用的service模板方法。
MybatisPlus提供的通用接口为IService,默认实现为ServiceImpl。
其中封装的方法由前缀命名方式区分,可以分为以下几类:save
:? ? ?新增remove
: 删除update
: 更新get
:? ? ? 查询单个结果list
:? ? 查询集合结果count
:? 计数page
:? ? 分页查询
2. IService接口的使用
????????由于Service
中经常需要定义与业务有关的自定义方法,因此我们不能直接使用IService
,而是自定义Service
接口,然后继承IService
以拓展方法。同时,让自定义的Service实现类
继承ServiceImpl
,这样就不用自己实现IService
中的接口了。
首先,定义IUserService
,继承IService
:
public interface UserService extends IService<User> {
// 拓展自定义方法
}
然后,编写UserServiceImpl
类,继承ServiceImpl
,实现UserService
:
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
}
3. 实例
@SpringBootTest
class UserServiceTest {
@Autowired
UserService userService;
//添加单条数据
@Test
void test1() {
//1. 初始化数据
User user = new User();
user.setUsername("TomX");
user.setPassword("123");
user.setPhone("18688990010");
user.setBalance(200);
user.setInfo("{\"age\": 24, \"intro\": \"英文老师\", \"gender\": \"female\"}");
user.setCreateTime(LocalDateTime.now());
user.setUpdateTime(LocalDateTime.now());
//2. 添加1条数据
userService.save(user);
}
//查询多条数据
@Test
void test2() {
List<User> users = userService.listByIds(List.of(1L, 2L, 4L));
users.forEach(System.out::println);
}
//删除多条数据
@Test
void test3() {
userService.removeBatchByIds(List.of(1L, 2L, 4L));
}
}
4. 总结
文章来源:https://blog.csdn.net/aaa131420030415/article/details/135378294
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!