개발 기록
Cannot change the ExecutorType when there is an existing transaction 본문
https://tomining.tistory.com/178
https://choisblog.tistory.com/81
@Repository
public class testMapper {
@Qualifier("SqlSessionFactory")
protected SqlSessionFactory sqlSessionFactory;
public testMapper(SqlSessionFactory sqlSessionFactory) {
this.sqlSessionFactory = sqlSessionFactory;
}
public void updateReqReportTarget(HashMap<String, Object> map) {
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH);
try {
sqlSession.update("com.example.batchtest.requestReport.mapper.testMapper.updateReqReportTarget", map);
} finally {
sqlSession.commit();
sqlSession.close();
}
}
}
@Mapper가 아닌 @Repository를 써야 정상 작동되었다.
SqlSessionFactory는 autoCommit이 안 되어있어 openSession에 true로 세팅해주거나 commit을 해줘야한다.
'TIL' 카테고리의 다른 글
quartz job parameters processor에서 사용 (0) | 2024.02.22 |
---|---|
mongoDB object 검색 (0) | 2024.02.14 |
Table 'tableName_seq' doesn't exist, @Slf4j cannot find symbol (0) | 2023.02.17 |
20221128 JVM의 메모리 모델 (0) | 2022.11.28 |
20221124 NHN FORWARD 후기 (0) | 2022.11.24 |
Comments