/**
* @author xp
* @description mybatis-plus分页
* @date 2019/3/15 11:03
*/
@RequestMapping("/selectUserPage")
@ResponseBody
public IPage<User> selectUserPage() {
// 从第1页开始 每页5条
Page<User> page = new Page<>(1, 5);
// 自动分页 查询条件 age=20
// IPage<User> userIPage = userMapper.selectPageVo(page, 20);
IPage<User> userIPage = userMapper.selectPage(page, new QueryWrapper<User>().eq("age", 20));
System.out.println("总条数 ------> " + userIPage.getTotal());
System.out.println("当前页数 ------> " + userIPage.getCurrent());
System.out.println("当前每页显示数 ------> " + userIPage.getSize());
return userIPage;
}
/**
* @author xp
* @description 查询
* @date 2019/3/15 11:03
*/
@RequestMapping("/selectUser")
@ResponseBody
public void selectUser() {
//根据id查询
User user = userMapper.selectById(1);
System.out.println("根据id查询" + user);
//普通查询
System.out.println("----- 普通查询 ------");
List<User> plainUsers = userMapper.selectList(new QueryWrapper<User>().eq("role_id", 2L).orderByAsc("age"));
List<User> lambdaUsers = userMapper.selectList(new QueryWrapper<User>().lambda().eq(User::getRoleId, 2L));
System.out.println("查询默认未删除 deleted=0" + plainUsers);
//子查询
System.out.println("----- 子查询 ------");
List<User> plainUsers2 = userMapper.selectList(new QueryWrapper<User>()
.inSql("role_id", "select id from role where id = 2"));
System.out.println("子查询"+plainUsers2);
List<User> lambdaUsers2 = userMapper.selectList(new QueryWrapper<User>().lambda()
.inSql(User::getRoleId, "select id from role where id = 2"));
System.out.println("子查询"+lambdaUsers2);
//带嵌套查询
System.out.println("----- 带嵌套查询 ------");
List<User> plainUsers3 = userMapper.selectList(new QueryWrapper<User>()
.nested(i -> i.eq("role_id", 2L).or().eq("role_id", 3L))
.and(i -> i.ge("age", 20)
));
List<User> lambdaUsers3 = userMapper.selectList(new QueryWrapper<User>().lambda()
.nested(i -> i.eq(User::getRoleId, 2L).or().eq(User::getRoleId, 3L))
.and(i -> i.ge(User::getAge, 20)));
System.out.println("带嵌套查询"+plainUsers3);
System.out.println("带嵌套查询"+lambdaUsers3);
//自定义(sql注入)
System.out.println("----- 自定义(sql注入) ------");
List<User> plainUsers4 = userMapper.selectList(new QueryWrapper<User>()
.apply("role_id = 2"));
System.out.println("带嵌套查询"+plainUsers4);
}
/**
* @author xp
* @description 插入
* @date 2019/3/15 16:58
*/
@RequestMapping("/insertAll")
@ResponseBody
public void insertAll() {
/*--------------------------------------插入-----------------------------------------*/
User user=new User();
user.setName("小羊");
user.setAge(3);
user.setEmail("abc@mp.com");
Integer count=userMapper.insert(user);
System.out.println("插入成功:"+count+"条");
// 成功直接拿会写的 ID
System.err.println("\n插入成功 ID 为:" + user.getId());
}