봄에 최대 절전 모드를 사용하고 있습니다.FetchType.LAZY가있는 최대 절전 모드 ManyToOne은 게으르지 않습니다.
나는 이와 비슷한 모델 클래스를 가지고있다.
@Entity
@Table(name = "forumtopic")
public final class Forumtopic extends AbstractUserTracking implements
java.io.Serializable {
/**SNIP **/
private Forumcategory forumcategory;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "FkForumcategoryId", nullable = false)
public Forumcategory getForumcategory() {
return this.forumcategory;
}
public void setForumcategory(final Forumcategory forumcategory) {
this.forumcategory = forumcategory;
}
}
일반적으로 작동하지만 카테고리는 게으르지 만 ForumEntry가로드 된 후 열심히로드됩니다.
Hibernate:
select
forumtopic0_.PkId as PkId19_0_,
forumtopic0_.CreateDate as CreateDate19_0_,
forumtopic0_.FkCreateUserId as FkCreate3_19_0_,
forumtopic0_.FkLastUserId as FkLastUs4_19_0_,
forumtopic0_.LastChange as LastChange19_0_,
forumtopic0_.FkForumcategoryId as FkForum10_19_0_,
forumtopic0_.PublishCategory as PublishC6_19_0_,
forumtopic0_.State as State19_0_,
forumtopic0_.Text as Text19_0_,
forumtopic0_.Topic as Topic19_0_,
forumtopic0_.FkTpUserId as FkTpUserId19_0_
from
forumtopic forumtopic0_
where
forumtopic0_.PkId=?
Hibernate:
select
forumcateg0_.PkId as PkId17_0_,
forumcateg0_.CreateDate as CreateDate17_0_,
forumcateg0_.Name as Name17_0_,
forumcateg0_.FkRequestId as FkReques4_17_0_,
forumcateg0_.FkTpUserId as FkTpUserId17_0_
from
forumcategory forumcateg0_
where
forumcateg0_.PkId=?
Altough the getter was not called the ForumCategory is loaded right after ForumTopic.
This problems appears in all my @ManyToOne-associations. However @OneToMany associating are loaded lazily.
I am using maven2 for the build. These are my dependencies.
<dependency> <groupId>org.springframework</groupId> <artifactId>spring</artifactId> <version>2.5.6</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>3.3.1.GA</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>ejb3-persistence</artifactId> <version>1.0.2.GA</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-annotations</artifactId> <type>jar</type> <version>3.4.0.GA</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <type>jar</type> <version>3.4.0.GA</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-search</artifactId> <version>3.1.0.GA</version> </dependency>
은 누군가가 나에게 무슨 일이 일어나고 있는지 이해하는 데 도움시겠습니까?
귀하의 지혜를 공유해 주셔서 감사합니다. – KarlsFriend