【发布时间】:2020-03-30 19:55:13
【问题描述】:
我正在尝试在请求参数中传递多值参数并期望结果如下。我在控制器中使用@RequestParam List<String> 来返回多值参数,但我试图弄清楚如何在响应中返回员工详细信息列表,如下所示。
Http 请求:/list/id?employee_ids=E123,E765
我收到以下回复:
{
"Employees": [
{
"EmployeeID": "E123,E765",
"EmployeeName": "John"
}
预期结果:
{
"Employees": [
{
"EmploeeId": "E123",
"EmployeeName": "John"
},
{
"EmploeeId": "E765",
"EmployeeName": "Peter"
}
]
}
波乔:
private String employeeId;
private String employeeName;
服务:
当一个员工ID列表被传递时,我应该得到员工ID和姓名
'Employee 表包含:EmployeeId 和 EmployeeName 作为列'
控制器:
@GetMapping(value = "/id")
public ResponseEntity<EmployeeResponse> getEmployee(@RequestParam List<String> employee_ids , @RequestHeader Map<String, Object> headers) {
log.info("Received request with headers: {}", headers);
ResponseEntity<EmployeeResponse> response = ResponseEntity.ok(getEmployee.employees(employee_ids
));
log.info("Responding to request with response: {}", response);
return response;
【问题讨论】:
-
如果我理解正确,您只需询问如何将您的 spring-boot 应用程序与数据库集成。我建议检查 Spring Data 项目。它有很好的文档,只需要很少的代码。
-
@kkotula,我已经改写了我的问题,当请求参数为 , 分隔时,我想在列表中返回多个员工。我该如何退货?并且响应应该是 JSON 格式。请帮忙!
-
添加这个方法也是有问题的 (getEmployee.employees(employee_ids)) - 它与你的 DAO 层有关
标签: java spring-boot rest api hashmap