我在做一行保存一對多對象時遇到問題。該外鍵不會填充到子對象中。他們不是想從Hibernate自動啓動嗎? BadgeID永遠不會被插入到BadgeLevel.BadgeID中。休眠,Oracle,序列和一對多問題
Badge.java
@Basic
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="BADGE_SEQUENCE")
@SequenceGenerator(name="BADGE_SEQUENCE", sequenceName = "BADGE_SEQUENCE")
@Column(name = "ID", nullable=false, unique=true)
public Long getId() {
return id;
}
@OneToMany(mappedBy="badge", fetch=FetchType.EAGER, cascade=CascadeType.ALL)
@Fetch(value=FetchMode.SELECT)
public List<BadgeLevel> getBadgeLevels() {
return this.badgelevels;
}
BadgeLevel.java
@Basic
@Id
@NotNull
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="BADGELEVEL_SEQUENCE")
@SequenceGenerator(name="BADGELEVEL_SEQUENCE", sequenceName = "BADGELEVEL_SEQUENCE")
@Column(name = "ID", nullable=false, unique=true)
public Long getId() {
return id;
}
@ManyToOne()
@JoinColumn(name = "BADGEID")
public Badge getBadge() {
return this.badge;
}
/**
* set badge
*/
public void setBadge(Badge badge) {
this.badge = badge;
}
如何鏈接兩個對象?請告訴我們session.open和session.close之間的代碼。 – jpkrohling 2011-02-24 06:13:24