我正在尝试在请求参数中传递多值参数,并期望结果如下。我正在使用@RequestParam List<String>
在 Controller 中返回多值参数,但我试图弄清楚如何在响应中返回员工详细信息列表,如下所示。
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 作为列”
Controller :
@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;
最佳答案
以下是我如何在路由中使用 HashMap 的示例:
Map<String, Object> pdata = new HashMap();
pdata.put("schedules", schedSVC.getSchedules());
pdata.put("webuser", userSVC.getActiveUser());
关于java - 如何在rest api中使用hashmap返回多值参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60938506/