EJB3 új entitás mentése

Fórumok

Sziasztok!

Kérlek segítsetek agy dolog megértésében. Olvasok egy sokak által vitatott könyvet JavaEE témában, és sajnos a könyv nem tér ki részletesen arra a problémára, ha új entitás akarok az adatbázisba szúrni. Addig eljutottam, hogy presistensé kell teni az EntityManagerben, ezért a beanbe csináltam egy ilyen függvényt (leegyszerűsítve):

public void storeItem(Items item) throws Exception {
if (item.getId() != null) {
em.merge(item);
} else {
em.persist(item);
}
}

ami meglévő entity esetén merge-l (ez műxik), de nem tudom mit kell tenni, ha még nem létező-t akarok beszúrni. Kérlek homályosítsatok fel.

Előre is köszönöm.

Hozzászólások

ennyit. :)

ha ki akarod rogton a dbbe kuldeni, mert mondjuk a primary key az autogenerated dbben, akkor en ugy szoktam, hogy


em.persist(data);
em.flush();
em.refresh(data);

ez igy frissiti az entitas autogeneralt mezojet/mezoit is.

ha nem flusholsz, akkor a JPA provider dolga eldonteni, hogy hany es milyen keresenkent batcheljen, igy kenyszeritheto ki a dbbe kozvetlen a dolog.