使用idea配置MyBatisPlus下面这个教程是可以的:
【精选】使用IDEA配置Mybatis-Plus框架_idea mybatisplus_Yy330*的博客-CSDN博客
MyBatisPlus通过扫描实体类,并基于反射获取实体类信息作为数据库表信息
类名驼峰转下划线作为表名
名为id的字段作为主键
变量名驼峰转下划线作为表的字段名

@TableName:用来指定表名
@Tableld:用来指定表中的主键字段信息
@TableField:用来指定表中的普通字段信息

对于这个数据库表:tb_user

使用@TableField的常见场景:




查询出名字中带‘o’的,存款大于等于1000元的人的id,info,balance:
SELECT id,info,balance
FROM user
WHERE username LIKE "o" AND balance >=?
void testQueryWrapper(){ //1.构建查询条件 QueryWrapperwrapper=new QueryWrapper () .selct("id","info","balance") .like("username","o") .ge("balance",1000); //2.查询 List users=userMapper.selectList(wrapper); users.forEach(System::out::println); } 其中User类是已经绑定数据库对应的user表
更新用户名为jack的用户余额为2000
UPDATE user
SET balance = 2000
WHERE username = "jack"
void testUpdateByQueryWrapper(){
//1.要更新的数据
User user=new User();
user.setBalance(2000);
//2.更新的条件
QueryWrapper wrapper=new QueryWrapper()
.eq("username","jack");
//3.执行更新
userMapper.update(user,wrapper);
}
更新id为1,2,4的用户的余额,扣200.
UPDATE user
SET balance = balance - 200
WHERE id IN (1,2,4)
void testUpdateWrapper(){
List ids=List.of(1,2,4);
UpdateWrapper Wrapper = new UpdateWrapper()
.setSql("balance=balance-200")
.in("id",ids);
userMapper.update(null,wrapper);
}
尽量使用LambdaQueryWrapper和LambdaUpdateWrapper,避免硬编码
void testLambdaQueryWrapper(){
//1.构建查询条件
LabdaQueryWrapper wrapper=new LabdaQueryWrapper()
.selct(User::getUsername,User::getInfo,User::getBalance)
.like(User::getUsername,"o")
.ge(User::getBalance,1000);
//2.查询
List users=userMapper.selectList(wrapper);
users.forEach(System::out::println);
}

自己写的UserService接口继承IService接口,实现类UserServiceImpl继承ServiceImpl实现类,此时就可以使用Service接口了。
基于Restful风格实现下面的接口:





多个条件的查询建议用Lambda:


