Mybatis - без ошибок он просто возвращает [] вместо данных в БД - PullRequest
0 голосов
/ 23 октября 2019

Я пытаюсь получить возвращаемое значение из БД, но оно возвращает [] вместо данных

JAVA Restful

    @RequestMapping("/regLocal")
    public List<Map<String, Object>> regist_local(@RequestBody Map<String, Object> params){
    Map<String, String> map = new HashMap<String, String>();

    String location = (String) params.get("location_name"); // 'country'
    String code = (String) params.get("location_code"); // '1'

    map.put("location", location);
    map.put("code", code);
    List<Map<String, Object>> lists = se.selectList(ns+".regLocal", map); // it return []

    return lists;
}

Mybatis

<select id="regLocal" resultType="map">
    select hll.hll_code hll_code, hll.hll_name hll_name 
    from hl_local hll, h_location hl
    where hll.hl_location = #{code} and hl.hl_name = #{location}
</select>

inOracle DB SQL select работает нормально без единой проблемы. но продолжайте возвращать это []

кто-нибудь знает проблему ??

1 Ответ

0 голосов
/ 24 октября 2019

Вы используете API selectList и декларацию XML, тип возвращаемого значения - map, но вы не указали, как результаты запроса должны заполнять карту. Если вы хотите, чтобы каждая строка из БД отображалась в Map<String, Object>, вы должны написать ResultHandler.

Вы можете использовать selectMap api, но в результате получается Map<String,AnObject>, где AnObject - это класс, которыйпредставляет столбцы, выбранные в запросе.

Вы можете проверить этот ответ для получения более подробной информации.

...