use a onetomany relationship for push info to avoid hibernate automatic lazy loading of onetoone optional relationships

This commit is contained in:
Athou
2013-05-30 10:24:30 +02:00
parent 84a8566af4
commit 0aee6850d5
6 changed files with 16 additions and 13 deletions

View File

@@ -9,7 +9,6 @@ import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.ManyToMany;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
@@ -69,9 +68,11 @@ public class Feed extends AbstractModel {
@Column(length = 255)
private String etagHeader;
@OneToOne(fetch = FetchType.LAZY, mappedBy = "feed", cascade = {
@OneToMany(fetch = FetchType.LAZY, mappedBy = "feed", cascade = {
CascadeType.PERSIST, CascadeType.MERGE })
private FeedPushInfo pushInfo;
// use a onetomany relationship for push info to avoid hibernate automatic
// lazy loading of onetoone optional relationships
private Set<FeedPushInfo> pushInfo;
@ManyToMany(mappedBy = "feeds")
private Set<FeedEntry> entries = Sets.newHashSet();
@@ -183,11 +184,11 @@ public class Feed extends AbstractModel {
this.lastUpdateSuccess = lastUpdateSuccess;
}
public FeedPushInfo getPushInfo() {
public Set<FeedPushInfo> getPushInfo() {
return pushInfo;
}
public void setPushInfo(FeedPushInfo pushInfo) {
public void setPushInfo(Set<FeedPushInfo> pushInfo) {
this.pushInfo = pushInfo;
}