0
하나의 최대 절전 모드 세션에서 지연 반복자 및 여러 트랜잭션과 혼동됩니다. 다음과 같은 코드 블록이 있습니다 :지연로드 및 다중 트랜잭션
@Transactional
public void runtProcessing() {
HibernateTemplate hibernateTemplate = ...
Session hibernateSession = hibernateTemplate.getSessionFactory().getCurrentSession();
Iterator<DomainObject> domainObjects = hibernateTemplate.iterate(...);
try {
while (domainObjects.hasNext()) {
hibernateSession.beginTransaction();
DomainObject domainObject = domainObjects.next();
processDomainObject(domainObject);
hibernateSession.getTransaction().commit();
}
}
여러 트랜잭션이 있으므로 어떤 트랜잭션이 반복기에서 작동합니까? 우리는 우리 자신의 트랜잭션을 정의하지 않는 경우
'@ Transactional'주석으로 코드가 업데이트되었습니다. 이미 열린 거래가 있습니다. –