所在cascade,就是说我在更新一方的时候,可以根据这一方对象之间的关联关系,去对被关联方进行持久化,比如说Team和Student之间的1对多关系,使用cascade,可以在team方维护其持有的student集合时,自动对其新增,修改,删除的student对象进行持久化,而没必要显示的进行session.save(student)操作
数据库脚本:
create
table
student(id
varchar
(
32
)
primary
key
,
team_id varchar ( 32 ),
name varchar ( 32 ),
cardid varchar ( 32 ),
age int );
create table team(id varchar ( 32 ) primary key ,
team_id varchar ( 32 ),
teamname varchar ( 32 ));
insert into team values (" 1 "," 1 ","team1");
insert into student values (" 1 "," 1 ","stu1"," 20070101 ", 22 );
insert into student values (" 2 "," 1 ","stu2"," 20070102 ", 23 );
team_id varchar ( 32 ),
name varchar ( 32 ),
cardid varchar ( 32 ),
age int );
create table team(id varchar ( 32 ) primary key ,
team_id varchar ( 32 ),
teamname varchar ( 32 ));
insert into team values (" 1 "," 1 ","team1");
insert into student values (" 1 "," 1 ","stu1"," 20070101 ", 22 );
insert into student values (" 2 "," 1 ","stu2"," 20070102 ", 23 );
持久化JavaBean
package
Cascade.saveUpdate;
public class Student ... {
private String id;
private String cardid;
private String name;
private int age;
private Team team;
public String getId() ...{
return id;
}
public void setId(String id) ...{
this.id = id;
}
public String getCardid() ...{
return cardid;
}
public void setCardid(String cardid) ...{
this.cardid = cardid;
}
public String getName() ...{
return name;
}
public void setName(String name) ...{
this.name =
public class Student ... {
private String id;
private String cardid;
private String name;
private int age;
private Team team;
public String getId() ...{
return id;
}
public void setId(String id) ...{
this.id = id;
}
public String getCardid() ...{
return cardid;
}
public void setCardid(String cardid) ...{
this.cardid = cardid;
}
public String getName() ...{
return name;
}
public void setName(String name) ...{
this.name =