私は、Eclipselinkと永続オブジェクトを探している簡単な例をいくつか混同しています。これは非常に新しいです。データベースに保存するオブジェクトを作成して突き替えるのはどんな時に重要ですか?例えばオブジェクトで行うすべての作業は、em.getTransaction()。begin();の後に行う必要があります。と呼ばれる?またはあなたはそのオブジェクトで必要なことを何でもしてから始め、持続して、閉じることができますか?JPA EntityTransaction、新しいオブジェクトの作成と永続化
この例はTomcatで使用しています。非JTA RESOURCE_LOCAL
以下の問題の違い:
EntityManagerFactory factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
EntityManager em = factory.createEntityManager();
// Creating and mutating object BEFORE begin() is called
Todo todo = new Todo();
todo.setSummary("sum");
todo.setDescription("desc");
// create new todo
em.getTransaction().begin();
em.persist(todo);
em.getTransaction().commit();
対
EntityManagerFactory factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
EntityManager em = factory.createEntityManager();
em.getTransaction().begin();
// Creating and mutating object AFTER begin() is called
Todo todo = new Todo();
todo.setSummary("sum");
todo.setDescription("desc");
em.persist(todo);
em.getTransaction().commit();
いいえ、何も変更されません。 –
これは、EntityTransactionのbeginメソッドのソースコードを読んだときに考えたことです。私が見ているすべての例が同じであるため、私は狂っていたと思った – JonnyD91