2013-02-14 2 views
0

сказать, что я получил список объектов класса из ЗЕЬЕСТА какОбновление лица, полученное от Выбрать в HQL

List<MyClass> something = em.createQuery("SELECT m FROM MyClass m").getResultList(); 

и я назвал еще несколько сеттеров

for (MyClass thing : something) 
thing.setName("a name"); 

Что такое синтаксис обновить эти объекты класса обратно в базу данных? Я пишу что-то вроде UPDATE MyClass m SET m = :newObject . setParameter("newObject", thing);

Это чисто синтаксис обновления, хотя я знаю, что менеджер может забрать изменения и записать их обратно в базу данных для меня.

Благодаря

+0

Если setName() вызывается в том же сеансе спящего режима, в котором вы получаете ** что-то **, обновление должно быть автоматическим после закрытия сеанса. или вы можете использовать em.saveOrUpdate (** вещь **), чтобы объединить это изменение обратно в БД. – spiritwalker

ответ

0

вы используете традиционный спящий режим или спящий режим реализации JPA? с традиционной спячкой, yourSession.saveOrUpdate (вещь) должен работать , если ваш код работает с JPA спящего режимом реализации, использование em.merge (вещи);

Смежные вопросы