Как использовать hashmap для возврата многозначного параметра в остальные API - PullRequest
0 голосов
/ 30 марта 2020

Я пытаюсь передать многозначные параметры в параметре запроса и ожидаю результатов, как показано ниже. Я использую @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"
    }
 ]
}

Pojo:

    private String employeeId;

    private String employeeName; 

Служба:

Когда список идентификаторов сотрудников передается, я должен получить идентификатор сотрудника и имя

'Таблица сотрудников содержит: 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;

Ответы [ 2 ]

0 голосов
/ 31 марта 2020

если вы используете JdbcTemplate, используйте объект NamedParameterJdbcTemplate, тогда у вас есть метод NamedParameterJdbcTemplate.queryForList (query, params); просто нужно добавить запрос с соответствующим списком

0 голосов
/ 30 марта 2020

Вот пример того, как я использую хеш-карты в моих маршрутах:

    Map<String, Object> pdata = new HashMap();
    pdata.put("schedules", schedSVC.getSchedules());
    pdata.put("webuser", userSVC.getActiveUser());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...