весенняя загрузка, jdbcTemplate, Java - PullRequest
0 голосов
/ 19 ноября 2018

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

@Override
public Pictures getPictureList() throws Exception {
    JdbcTemplate jdbc = new   JdbcTemplate(datasource);
    String sql= "select path from  bakery.pictures where id=1";
    Pictures pcList = jdbc.query(sql, new BeanPropertyRowMapper<Pictures>(Pictures.class));
    return pcList;
}

Этот метод возвращает «запрос был добавлен в список».Как я могу решить это?

1 Ответ

0 голосов
/ 19 ноября 2018

Используйте метод JdbcTemplate.queryForObject(), чтобы получить одну строку по ее первичному ключу.

Pictures p = jdbc.queryForObject(sql, 
        new BeanPropertyRowMapper<Pictures>(Pictures.class));

JdbcTemplate.query() вернет несколько строк, что не имеет смысла, если вы запрашиваете по первичному ключу.

List<Pictures> list = jdbc.query(sql, 
        new BeanPropertyRowMapper<Pictures>(Pictures.class));
Picture p = list.get(0);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...