незаконно пытался связать прокси с двумя открытыми сессиями при вызове session.save () - PullRequest
0 голосов
/ 29 июня 2018

Я пытаюсь сохранить объемные данные в таблицу сохраняя, я сталкиваюсь с проблемой как

незаконно попытался связать прокси с двумя открытыми сеансами

Session session = sessionFactory.openSession();
        Transaction transaction = session.beginTransaction();

        for (Object obj : ObjectList) {
            session.save(obj );
        }
        transaction.commit();
        session.close();
     }

Я видел эту проблему при обновлении записей, но теперь она спасает, есть ли какое-то решение.

1 Ответ

0 голосов
/ 29 июня 2018

Здесь вы можете очистить пакет вставок и освободить память:

для получения дополнительной информации вы можете обратиться к документу hibernate при пакетной обработке.

    int count=0;

     for (Object obj : ObjectList) {

         session.save(obj );
         //20, same as default the JDBC batch size
         if ( ++count % 20 == 0 ) {
             session.flush();
             session.clear();
         }
    }
    transaction.commit();
    session.close();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...