deserializować leniwe ładowanie w hibernacji i jacksonie

Czy istnieje sposób na załadowanie LAZY i deserializację obiektu przy użyciu id zamiast obiektu POJO.

Mam klasę 2 połączoną relacją wiele do wielu.

Coś takiego

public class User {
    @Id
    @JsonProperty
    public long id;

    @ManyToMany(
            fetch = FetchType.EAGER,
    )
    @JoinTable(
            name = "User_EntityType",
            joinColumns = @JoinColumn(name = "user_id"),
            inverseJoinColumns = @JoinColumn(name = "type_id")
    )
    @JsonProperty
    public Set<Type> types;

}

public class Type {
    @Id
    @JsonProperty
    public long id;

    @ManyToMany(
            fetch = FetchType.EAGER,
            mappedBy = "types",
            targetEntity = User.class
    )
    @JsonProperty
    public Set<User> users;
}

Typ danych działa dobrze. Mogę pisać i czytać za pomocą hibernacji bez problemu.

Jednak chcę mieć możliwość zwrócenia obiektu użytkownika za pomocą interfejsu API REST, więc używam go do deserializacji. Problem polega na tym, że kiedy to robię, deserializuje każdy typ w obiekcie użytkownika, który obejmuje inne obiekty typu i tworzy ogromny bałagan.

Czy można zamiast tego zwrócić identyfikatory typu Zestaw długich zamiast Zestawu typów?

questionAnswers(2)

yourAnswerToTheQuestion