springboot mybatis-plus 项目中 如何编写一个根据条件查询接口,只返回部分字段的代码,请说明详细步骤和代码举例。
时间: 2023-05-16 19:05:30 浏览: 98
在 SpringBoot Mybatis-Plus 项目中,可以通过使用 Mybatis-Plus 提供的 Wrapper 类来实现根据条件查询并只返回部分字段的接口。具体步骤如下:
1. 创建一个 Mapper 接口,继承 Mybatis-Plus 提供的 BaseMapper 接口。
```java
public interface UserMapper extends BaseMapper<User> {
List<User> selectByWrapper(@Param(Constants.WRAPPER) Wrapper<User> wrapper);
}
```
2. 在 Service 层中编写一个根据条件查询并只返回部分字段的方法。
```java
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
@Override
public List<User> selectByWrapper(Wrapper<User> wrapper) {
return baseMapper.selectByWrapper(wrapper);
}
}
```
3. 在 Controller 层中编写一个接口,调用 Service 层的方法并返回结果。
```java
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/select")
public List<User> selectByWrapper() {
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.select("id", "name", "age").eq("age", 18);
return userService.selectByWrapper(wrapper);
}
}
```
在上面的代码中,我们使用了 QueryWrapper 类来构建查询条件,并通过 select 方法指定只返回 id、name 和 age 三个字段的值。最后,我们调用 Service 层的 selectByWrapper 方法,并将 QueryWrapper 对象作为参数传入,即可实现根据条件查询并只返回部分字段的接口。
阅读全文