我是vaadin jpacontainer的新手。我正在使用vaadin jpacontainer agpl-3.0-2.10。
我创建了一个Person类,我的应用程序类看起来像这样:
EntityManager em = JPAContainerFactory.createEntityManagerForPersistenceUnit("book-examples");
JPAContainer<Person> persons = JPAContainerFactory.make(Person.class, "book-examples");
persons.setReadOnly(false);
persons.addEntity(new Person("Marie-Louise Meilleur", 117));
persons.addEntity(new Person("Sarah Knauss", 122));
Table personTable = new Table("person",persons);
personTable.setReadOnly(false);
persons.getItem(1L).getEntity().setName("Me");
persons.commit();
personTable.commit();
layout.addComponent(personTable);
当我运行应用程序时,结果如我所希望的那样:第一项的名称是“我”。但是当我检查数据库时,第一个项目的名称是“Marie-Louise Meilleur”。为什么commit方法没有改变数据库?
答案 0 :(得分:2)
persons.getItem(1L).getItemProperty("name").setValue("me");