学生情報をhibernate session.save()に保存するためのコードをサンプルしようとしています。その中で、学生名、クラス、教師ID。Session.saveは休止状態のデータを更新しています
表:学生
SNO SNAME SCLASS TNO
----------- ----------------------------------------
1 J D Alex 3 1
2 Goaty 2 2
3 J D Paul 7 1
コード: -
Transaction tx1=session1.beginTransaction();
Object o2=session1.get(Student.class,new Integer(3));
((Student)o2).setSclass("8");
session1.save(o2);
log.info("loadStdYearlyInfo:class "+((Student)o2).getSclass());
tx1.commit();
session1.close();
データを保存した後
とクラス値は学生証のための8のように更新された出力を見ては、3
SNO SNAME SCLASS TNO
----------- ----------------------------------------
1 J D Alex 3 1
2 Goaty 2 2
3 J D Paul 8 1
[07/May/2012:10:03:06] info (3500): CORE3282: stdout: Hibernate: /* load com.aims.beans.Student */ select student0_.sno as sno0_, student0_.sname as sname1_0_, student0_.sclass as sclass1_0_, student0_.tno as tno1_0_ from student student0_ where student0_.sno=?
[07/May/2012:10:03:06] info (3500): CORE3282: stdout: loadStdYearlyInfo:class 8
[07/May/2012:10:03:06] info (3500): CORE3282: stdout: Hibernate: /* update com.aims.beans.Student */ update student set sname=?, sclass=?, tno=? where sno=?
[07/May/2012:10:03:06] info (3500): CORE3282: stdout: loadStdYearlyInfo2
です
更新されたデータベースクラスの学生クラスの値は?。saveはデータを挿入することを意味しますが、ここでは値が更新されます。私は知っています。何か問題がある場合.if任意の間違った質問申し訳ありません。
非常に徹底した説明。私にいくつか教えてください。 :) – Falle1234
自動汚れチェックとは何ですか? – user1357722
Hibernateは、永続オブジェクトの状態変化を自動的に追跡し、フラッシュ中にダーティオブジェクトを更新します。この能力を説明するための単なる言葉です –