MyBatis-Plus 通用IService的使用

MyBatis-Plus 通用IService

一、前言

MyBatis-Plus除了通用的Mapper还是通用的Servcie层,这也减少了相对应的代码工作量,把通用的接口提取到公共。其实按照MyBatis-Plus的这种思想,可以自己也实现一些通用的Controller。

二、Iservice的使用

service层需要继承IService,当然实现层也要继承对应的实现类。

    /**
     * 

* 用户 服务类 *

* * @author tgy * @since 2020-6-10 */ public interface UserService extends IService {}
/**
 * 

* 用户 服务实现类 *

* * @author tgy * @since 2020-6-10 */ @Service public class UserServiceImpl extends ServiceImpl implements UserService {}

1.增删改查

如下列出了常用的增删改查方法,具体参数铁子们就自己赋值了,非常的方便,设计非常的银性。

 //查询所有
userService .list();
//查询数量
userService .count();
//根据ID查list集合
userService .listByIds());
//根据ID删除
userService .removeById();
userService .removeByIds();
//修改
userService .update();
//新增
userService .save();

2、特殊方法

①getOne(),这个是方法返回结果不止一条则会抛出异常,如果想默认取第一条结果,可以给这方法传第二个参数为false。

 User one = userService.getOne(Wrappers.lambdaQuery().eq(User::getAge, 11),false);

②saveOrUpdateBatch(),批量新增或者修改方法,判断ID是否存在,如果ID不存在执行新增,如果ID存在先执行查询语句,查询结果为空新增,否则修改。

   boolean b = userService.saveOrUpdateBatch(users);

你可能感兴趣的:(MyBatis-Plus 通用IService的使用)