Czy istnieje sposób, aby zachować LAZY ładowanie i deserializować obiekt za pomocą id zamiast POJO obiektu.deserialize leniwy ładowanie w hibernacji i jackson
Mam 2 klasy, które są połączone 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;
}
typu dane działa dobrze. Mogę pisać i czytać przy użyciu hibernacji bez problemu.
Jednak chcę móc zwrócić obiekt użytkownika z interfejsem API REST, więc używam go do deserializacji. Problem polega na tym, że robię to, deserializuję każdy obiekt typu w obiekcie użytkownika, który zawiera inne obiekty typu, i powoduje ogromny bałagan.
Czy można zamiast tego zwrócić zestaw identyfikatorów typu długiego zamiast zestawu typów?