Hibernate: saveOrUpdateAll и транзакция - PullRequest
0 голосов
/ 03 ноября 2011

В настоящее время я использую версию 3.3 hibernate.

В настоящее время настройка hibernate такова, что он будет автоматически фиксироваться после каждого сохранения отдельного объекта.

Я хочу обернуть транзакцию вокруг нее, чтобы она фиксировалась только после завершения пакета.

Код под вопросом:

  getHibernateTemplate().saveOrUpdateAll(collectionOfObject);

Я ознакомился с документацией здесь , но хочу посмотреть, есть ли альтернатива (кроме переписывания ее для использования HSQL)

EDIT

Моя цель - провести транзакцию вокруг группы вставок. В настоящее время это автоматическая фиксация для каждой вставки

1 Ответ

2 голосов
/ 03 ноября 2011

Если вы хотите использовать управление транзакциями в Spring , прочитайте здесь о том, как это сделать.

Кроме того, при использовании не следует использовать HibernateTemplate вместо этого используйте объект Session, как показано ниже.

    sessionFactory = getHibernateTemplate().getSessionFactory();
    Session session = sessionFactory.getCurrentSession();
    for (Bean bean : listBeans) {
        session.saveOrUpdate(bean );
    }

Поскольку нет возможности сохранить коллекцию одним сеансом. Это подтвердит данные после выхода из метода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...