多くの ManyToOne、OneToOne などの関係を持つエンティティがあり、それら自体にもいくつかの関係があります。例えば
@OneToMany(targetEntity = Season.class, cascade = {
CascadeType.ALL
})
@JoinColumn(name = "SEASON_ID")
public List<Season> getSeasons(){...}
(これは変更できません)。
これらは遅延ロードされます (デフォルトだと思います)。これは良いことであり、これを変更したくありません。ここで、エンティティ全体を id で熱心に検索して返したい場合があります。
エンティティを変更するための多くの提案と、積極的ローディングと遅延ローディングのどちらが優れているかについての議論を見つけましたが、エンティティは私たちの手の届かないところにあるため、現時点では役に立ちません。エンティティを変更せずに、可能なすべてのゲッターを呼び出して遅延エンティティを初期化する必要なく、これを行う方法はありますか (それらが多すぎるため)。たとえば、質問 24573877への回答はうまくいきません。
基本的には「エンティティを熱心にロードしますが、これは一度だけ」と言いたいです。現在、私はやっていreturn em.find(MyEntity.class, contractId)
ます(これを変更できます)。
ありがとう、よろしく Urr4