자바/Spring5 Spring Batch ORA-08177 오류 Oracle 마이그레이션 이후 배치 실행시 ORA-08177 에러가 간혹 발생하였다. ORA-08177: can't serialize access for this transaction (이 트랜잭션에 대한 직렬화 액세스를 할 수 없습니다) JobRepository 설정 중 transactionManager의 IsolationLevelForCreate 속성을 따로 지정하지 않을 경우 기본으로 ISOLATION_SERIALIZABLE로 설정되기 때문에 발생한다. 이 속성을 ISOLATION_DEFAULT로 변경하면 된다. @Configuration public class BatchConfig extends DefaultBatchConfigurer { private final DataSource dataSou.. 2024. 1. 19. IntelliJ Cannot resolve symbol 에러 스프링 부트 프로젝트 소스 수정 후 갑자기 방금 전까지만 해도 작동했던 프로젝트가 에러를 뱉어버렸다... 아니 갑자기 왜? 나는 소스만 수정했는데... 이럴 땐! IntelliJ 종료 후 프로젝트 디렉토리 내 .idea 디렉토리를 삭제한다. 그리고 IntelliJ를 열어서 빌드 후 기동하면 된다! (.idea에는 프로젝트의 설정값들이 저장된다고 한다.) 2023. 10. 20. @RequestMapping 경로 '/' 유무 갑자기 @RequestMapping 어노테이션을 사용할 때 경로의 시작에 '/'의 유무가 차이가 있는지 궁금했다. '/'를 붙여도 안 붙여도 동작하는 건 동일하게 동작하는 것 같은데 정확하게 알고 싶었다. 결론은 '/'의 유무의 차이는 없다. RequestMapping시 path 매핑은 내부적으로 무조건 '/'를 앞에 붙이도록 구현되어 있다. 그래서 '/'의 유무는 상관이 없으나, 최종 path는 슬래시가 앞에 붙는 형태가 된다. 참고 https://www.inflearn.com/questions/455919/%EA%B2%BD%EB%A1%9C 2023. 10. 20. JPA @Embedded, @Embeddable, @AttributeOveride, @AssociationOveride PostgreSQL에서 Oracle로 마이그레이션 작업 진행 중 FK 중복으로 FK 컬럼명을 변경해야 하는데 @Embedded 어노테이션 사용으로 중복된 컬럼명을 변경하는 방법이 달랐다. 데이터베이스 마이그레이션 관련 작업 관련해서 정리한 글을 썼는데, 그 글에 이 내용까지 덧붙이게 되면 너무 길어지고 다양한 내용이 한 곳에 정리되어 더 복잡할 것 같아 따로 글을 쓰기로 하였다. (PostgreSQL to Oracle migration 정리 -> https://hyo11.tistory.com/27) @Embedded, @Embeddable 엔티티 내 일부 데이터를 하나의 객체로 묶어 보다 객체 지향적으로 설계할 수 있다. 예를 들어 회원 엔티티가 다음과 같다고 가정해 보자. @Entity @Getter .. 2023. 10. 17. 이전 1 2 다음 반응형