学完之后给准备学习MyBatisPlus的同学一个建议:
能手敲就手敲,个人不喜欢MyBatisPlus,还是建议使用Mybatis,sql语句还是自己写舒服一些
这个快速学习知道怎么用就行了
常见注解:
常见配置:
核心功能:
条件构造器(Wrapper):
QueruWrapper:
@Test
void testQueryWrapper(){
//查询的条件
QueryWrapper<User> wrapper=new QueryWrapper<User>()
.select("id","username","info","balance")
.like("username","o")
.ge("balance",1000);
List<User> users = userMapper.selectList(wrapper);
users.forEach(System.out::println);
}
@Test
void testUpdateQueryWrapper(){
User user=new User();
user.setBalance(2000);
//更新的条件
QueryWrapper<User> wrapper=new QueryWrapper<User>().eq("username","Jack");
//执行更新
userMapper.update(user,wrapper);
}
UpdateWrapper:
@Test
void testUpdateWrapper(){
List<Long> ids=List.of(1L,2L,3L);
UpdateWrapper<User> wrapper = new UpdateWrapper<User>()
.setSql("balance = balance - 200")
.in("id",ids);
//执行更新
userMapper.update(null,wrapper);
}
自定义SQL:
<update id="updateBalanceByIds">
UPDATE user
set balance = balance - #{amount} ${ew.customSqlSegment}
</update>
@Test
void testCustomSqlUpdate(){
//更新条件
List<Long> ids=List.of(1L,2L,4L);
int amount=200;
//定义条件
QueryWrapper<User> wrapper=new QueryWrapper<User>()
.in("id",ids);
//调用自定义SQL方法
userMapper.updateBalanceByIds(wrapper,amount);
}
Service接口:
扩展功能:
代码生成器:
静态工具: