帮我写mybaitisplus列表查询功能的controlled代码
时间: 2024-05-06 20:14:50 浏览: 16
好的,以下是一个简单的MyBatis Plus列表查询的Controller代码示例:
```java
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/list")
public List<User> userList() {
List<User> userList = userService.list();
return userList;
}
@GetMapping("/page")
public IPage<User> userPage(
@RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
String name) {
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
if (StringUtils.isNotBlank(name)) {
queryWrapper.like("name", name);
}
Page<User> page = new Page<>(pageNum, pageSize);
IPage<User> userIPage = userService.page(page, queryWrapper);
return userIPage;
}
}
```
在上面的代码中,我们定义了一个`UserController`类,其中注入了一个`UserService`,用于处理用户相关的业务逻辑。该类中包含了两个列表查询的接口:`/list` 和 `/page`。
`/list`接口直接调用`userService.list()`方法,返回所有用户列表。
`/page`接口则根据传入的页码、每页条数和查询条件,调用`userService.page()`方法进行分页查询,并返回查询结果。
其中,`QueryWrapper`是MyBatis Plus提供的条件构造器,用于构建查询条件。在这里,我们根据传入的`name`参数进行模糊查询。`Page`是MyBatis Plus提供的分页查询类,用于封装分页查询的相关信息。在这里,我们将传入的页码和每页条数封装到`Page`对象中,然后将`Page`对象传入`userService.page()`方法中进行分页查询。最后,我们将查询结果封装到`IPage`对象中并返回。