mybatis-plus的Model、BaseMapper、Iservice的用法

1、Model:使用映射类pojo继承model,直接使用该类可以进行CRUD,但是必须存在对应的mapper继承BaseMapper;

@RunWith(SpringRunner.class)
@SpringBootTest
public class SampleTest {
 
    //使用model进行插入操作
    @Test
    public void aInsert() {
        User user = new User();
        user.setName("咩咩");
        user.setAge(5);
        user.setEmail("miemie@mp.com");
        Assert.assertTrue(user.insert());
        // 成功可以直接获取 ID
        System.err.println("\n插入成功 ID 为:" + user.toString());
    }
 
 
    //使用model进行删除
    @Test
    public void bDelete() {
        Assert.assertTrue(new User().setId(3L).deleteById());
        Assert.assertTrue(new User().delete(new QueryWrapper<User>()
                .lambda().eq(User::getName, "Sandy")));
        List<User> userList=new User().selectAll();
        userList.forEach(u->System.out.print(u));
    }
 
 
    //使用model进行更新
    @Test
    public void cUpdate() {
        Assert.assertTrue(new User().setId(1L).setEmail("ab@c.c").updateById());
        Assert.assertTrue(new User().update(new UpdateWrapper<User>().lambda()
                        .set(User::getAge, 3).eq(User::getId, 2)));
    }
 
 
    //使用model进行查找
    @Test
    public void dSelect() {
        Assert.assertEquals("ab@c.c", new User().setId(1L).selectById().getEmail());
        User user = new User().selectOne(new QueryWrapper<User>().lambda().eq(User::getId, 2));
        Assert.assertEquals("Jack", user.getName());
        Assert.assertTrue(3 == user.getAge());
    }
 
    //使用model进行分页查找
    @Test
    public void dSelectPage() {
        IPage<User> userIPage=new Page<>(1,10);
        LambdaQueryWrapper<User> queryWrapper=new LambdaQueryWrapper<>();
        queryWrapper.eq(User::getAge,20);
        userIPage = new User().selectPage(userIPage,queryWrapper);
        userIPage.getRecords().forEach(i -> System.out.println(i));
    }
}

2、BaseMapper和Iservice BaseMapper是使用dao层数据进行CRUD,只需要进行使用dao层接口继承BaseMapper即可;
 

public interface UserMapper extends BaseMapper<User>{}

3.Iservice是使用service层进行CRUD,需要使用service接口继承Iservice,并且service接口的实现类要继承ServiceImpl<xxxMapper,pojo>;

public interface IUserService extends BaseService<User> {}
public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implements IUserService {}

 

BaseMapper和Iservice里面提供的方法都差不多,只是Iservice提供了批量操作的实现,比如: 批量添加、批量修改。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值