Список возврата <String>с Spring JdbcTemplate с Select IN - PullRequest
0 голосов
/ 25 сентября 2019

Я получаю сообщение о несовместимости типов.

Required: List<java.lang.String>
Found: List<java.util.Map<java.lang.String, java.lang.Objectaq>

Что я делаю не так?

String sql = "SELECT distinct case_name FROM case WHERE case_class IN (:case_class)";
Map<String, List> paramMap = Collections.singletonMap("case_class", listCaseClass);
List<String> cases = jdbcTemplate.queryForList(sql, paramMap, String.class);

1 Ответ

0 голосов
/ 25 сентября 2019

измените свой код следующим образом:

String sql = 
    "SELECT distinct case_name FROM case WHERE case_class IN (:case_class) ";

Map<String, Object> paramMap = new HashMap<>();
paramMap.put("case_class", listCaseClass);

List<String> cases = jdbcTemplate.queryForList(sql, paramMap, String.class);

Я думаю, что регистр является зарезервированным ключом, если вы хотите использовать этот ключ, так как имя таблицы следует использовать в двойных кавычках, например:

String sql = 
        "SELECT distinct case_name FROM \"case\" WHERE case_class IN (:case_class) ";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...