Данные, вставленные в базу данных вручную, не будут отображаться в репозитории Spring Boot

#sql #spring-boot #jpa #h2

Вопрос:

Я добавил кучу тестовых данных в таблицу в своей базе данных H2, но когда я ищу их в своем репозитории JPA, он не может их найти (с помощью a findById ). Всегда ли Spring Boot/JPA «поглощает» вновь добавленные данные в базе данных SQL ? Просто хочу быть в этом уверен, чтобы не тратить на это время.

Комментарии:

1. Является ли ваша база данных H2 постоянной или только в памяти?

2. это настойчиво

3. Я получаю ошибку «нет значения» при поиске в репозитории findById , но данные находятся в таблице… Я попытался указать запрос вручную, @Query но он все равно не работает…

4. Возможно, ваше приложение Spring Boot подключается к другому экземпляру H2 по сравнению с тем инструментом, который вы используете для просмотра данных. Это случилось со мной давным-давно, когда я запускал H2 внутри экземпляра SpringBoot. В целях тестирования я решил запустить H2 вне Spring Boot, чтобы я мог одновременно подключаться из приложения, а также из внешнего инструмента (клиент SQL Squirrel) для проверки данных. Это решило мою проблему.