以下のステートメントは有効ですか?
persist() also guarantees that it will not execute an INSERT statement if it is called outside of transaction boundaries
persist を使用して以下のコードを試すと、次に、トランザクションなしで行が挿入されます(コメントアウトされています)。
SessionFactory sessionFactory = new Configuration().configure("student.cfg.xml").buildSessionFactory();
Session session = sessionFactory.openSession();
//Transaction tran = session.beginTransaction();
/*
* Persist is working without transaction boundaries ===> why?
*/
Student student = new Student();
student.setFirstName("xxx");
student.setLastName("yyy");
student.setCity("zzz");
student.setState("ppp");
student.setCountry("@@@");
student.setId("123456");
session.persist(student);
//tran.commit();
session.flush();
session.close();