1
@Entity
public class Record implements Serializable{
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private long id;
@OneToMany(fetch=FetchType.EAGER)
@Fetch(FetchMode.SUBSELECT)
@Cascade(value={CascadeType.SAVE_UPDATE})
private List<Comment> commentList=new ArrayList<Comment>();
}
@Entity
public class Comment implements Serializable{
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private long id;
@Column(columnDefinition="text")
private String content;
}
我有一個記錄在我的客戶端,並在列表中添加一些評論。
使用RMI方法:void update(Record reocord)。
然後在服務器上,hibernate將ID = 0的註釋保存到數據庫中,並生成一個生成的ID。
如何將這些ID分配給客戶端中的評論?如果沒有,另一次我打電話更新(記錄reocord),評論將被添加兩次。
也許:記錄更新(記錄重定向),但我認爲如果記錄有大量數據,這不是明智之舉。RMI + hibernate的,怎麼能得到客戶端產生的ID
那麼,我最終選擇通過每次添加新註釋時都返回註釋id來解決此問題。我最好更好地設計數據庫關係和體系結構。 – LYK