1. 程式人生 > >hibernate一對多,更新主表時刪除舊的多方資料加入新的多方資料

hibernate一對多,更新主表時刪除舊的多方資料加入新的多方資料

	@OneToMany(fetch = FetchType.EAGER)
	@Cascade(value = {CascadeType.SAVE_UPDATE,CascadeType.ALL}) 
	private List<Student> studentList; //集合列表

在service層中。更新主表前,先獲取舊的集合子物件,然後在更新完主表後,對舊的集合物件進行刪除

Classroom classroom=classroomDao.findById(id);
List<student> tempList=classroom.getStudentList();
classroom.setStudnetList(myNewStudnetList);
				
if(tempList!=null)
	for(Student item: tempList)
	{
	studentDao.remove(item);
	}