Hibernate 級聯新增刪除
問題描述:實體類答案從屬於實體類問題。(一對多)
/**
*
新增 問題 和 選項
*
@throws Exception
*/ @Test
public
void testQu() throws Exception {
Session
session = HibernateUtil.currentSession();
Transaction
tr = session.beginTransaction();
//級聯新增
Set
options = new HashSet();
Options
op1 = new Options();
op1.setName( "op1" );
options.add(op1);
Options
op2 = new Options();
op2.setName( "op2" );
options.add(op2);
Options
op3 = new Options();
op3.setName( "op3" );
options.add(op3);
Problems
problems = new Problems();
problems.setName( "problem_1" );
problems.setOptions(options); problems.setTdesc( "tdesc" );
problems.setType(1);
Long
ll = (Long)session.save(problems);
System.out.println(ll);
tr.commit();
mysql>
select * from options ;
+----+------------+--------+------+---------+
|
id | problemsid | answer | name | visible |
+----+------------+--------+------+---------+ |
1 | 1 | NULL | op2 | 0 |
|
2 | 1 | NULL | op3 | 0 |
|
3 | 1 | NULL | op1 | 0 |
+----+------------+--------+------+---------+
3
rows in set
(0.00 sec)
mysql>
select * from problems ;
+----+-----------+------+-------+------------+---------+
|
id | name | type | tdesc | questionid | visible |
+----+-----------+------+-------+------------+---------+
|
1 | problem_1 | 1 | tdesc | NULL | 0 |
+----+-----------+------+-------+------------+---------+
1
row in
|