в аккаунт, всё проходит но если смотреть по breakpoint-ам то id = 0, хотя должно быть 1
использую JdbcTemplate + Spring MVC
код метода
public User showAllUsers(String email, String password) {
return jdbcTemplate.query("select id from client " +
"where email =? and password =?",
new Object[]{email,password},
new BeanPropertyRowMapper<>(User.class)).
stream().findAny().orElse(null);
}
обоги, еще не все хибернейт/жпа используют?
Не все, и правильно делают
почему?
дядь, я просто учусь, что бы знать, тут дело в том что бы понять что и как
Потому что ненужный оверхед, ебейшая настройка, невырубаемый кеш первого уровня и много много чего другого
и миллион строчек кода с сессиями и транзакциями
Ну не обязательно, если есть спринг дата
это всё конечно хорошо, а с проблемой этой, что делать, как решить хоть намекните куда думать
> использовать это в 2022
что ты имеешь ввиду?
То, что за пределами стажерских хелловорлдов и шаблонных крудов от него часто проблем больше, чем пользы, а количество магии под капотом требует уймы специфичных знаний, чтобы правильно его готовить
Что у твоего решения есть тоже существенные минусы в более-менее крупном, чем простой круд
А почему у тебя "select id" и всё это мапится на User.class? Попытайся "select *"
я пробовал, но и так тоже не работает
А что сама квери возвращает? >Column values are mapped based on matching the column name as obtained from result set meta-data to public setters for the corresponding properties. The names are matched either directly or by transforming a name separating the parts with underscores to the same name using "camel" case. У тебя вот это условие маппера выполнено?
Поставь брейкпоинт на mapRow в BeanPropertyRowMapper и загляни в resultSet
Ну хорошо, ты решил вытаскивать только айди, открой fields и rows
Ну вот твой Tuple >Class representing a row in a ResultSet.
а в чём может быть проблема, почему он не вытаскивает данные из бд?
Ну с того, что я вижу, у тебя всё там достало :D
что-то я её там не вижу )))
Обсуждают сегодня