Спящий режим: может сохранить объект, но не может загрузить его обратно

#java #spring #hibernate #jpa

Вопрос:

У вас нет этой модели:

Address.java:

 @Embeddable
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Address {
    private String street;
    private String city;
    private String state;
    private String pincode;
}
 

User.java:

 @Entity
@Data
@Table(name = "UserDetails")
public class User {
    @Id
    private int id;
    private String name;
    @ElementCollection
    private Collection<Address> addresses = new ArrayList<>();
}
 

DemoApplication.java:

 CommandLineRunner dataLoader2(UserRepository userRepo){
        return  new CommandLineRunner() {
            @Override
            public void run(String... args) throws Exception {
                User u = new User();
                u.setName("Some random name");
                Address a1 = Address.builder()
                        .street("First Street")
                        .city("first city")
                        .state("first state")
                        .pincode("100001")
                        .build();
                Address a2 = Address.builder()
                        .street("Second Street")
                        .city("Second city")
                        .state("second state")
                        .pincode("200002")
                        .build();
                u.setAddresses(new HashSet<>(Arrays.asList(a1, a2)));
                userRepo.save(u);

                //IF I DON'T FETCH THE USER BACK, IT COMPILES SUCCESSFULLY, BUT ONCE I WANT TO FETCH A USER, IT FAILS

                //User u2 = userRepo.findById(0).orElse(null);
                //System.out.println(u2);
            }
        };
    }
 

Я не могу подойти к этому вопросу. Нет ошибки, если я не получаю никаких данных обратно, просто сохраняю пользователя. Но как только я попытаюсь вернуть его обратно, тогда Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.

PS: использование mysql в качестве базы данных.

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

1. Можете ли вы добавить UserRepository код?