Java后端如何给前端写一个模糊查询客户数据的Controller接口。
时间: 2024-02-26 12:56:52 浏览: 59
假设你的客户数据存储在一个名为`Customer`的Java Bean中,其中包含了`id`、`name`、`phone`等属性。你可以按照以下步骤编写一个模糊查询客户数据的Controller接口:
1. 在Controller类中添加一个RequestMapping注解,指定接口的URL和HTTP请求方法。
```java
@RestController
@RequestMapping("/api/customers")
public class CustomerController {
// ...
}
```
2. 添加一个GET方法,用于处理查询请求。在方法中添加一个@RequestParam注解,接收前端传递的查询关键词。
```java
@GetMapping
public List<Customer> searchCustomers(@RequestParam("keyword") String keyword) {
// ...
}
```
3. 在方法中编写模糊查询的逻辑。可以使用MyBatis-Plus提供的条件构造器,例如:
```java
QueryWrapper<Customer> wrapper = new QueryWrapper<>();
wrapper.like("name", keyword).or().like("phone", keyword);
List<Customer> customers = customerMapper.selectList(wrapper);
```
4. 将查询结果返回给前端。
```java
return customers;
```
最终的代码如下:
```java
@RestController
@RequestMapping("/api/customers")
public class CustomerController {
@Autowired
private CustomerMapper customerMapper;
@GetMapping
public List<Customer> searchCustomers(@RequestParam("keyword") String keyword) {
QueryWrapper<Customer> wrapper = new QueryWrapper<>();
wrapper.like("name", keyword).or().like("phone", keyword);
List<Customer> customers = customerMapper.selectList(wrapper);
return customers;
}
}
```
这样,在前端发起`/api/customers?keyword=xxx`的GET请求时,就会返回符合关键词`xxx`的客户数据了。
阅读全文