해결된 질문
작성
·
568
1
join 메소드에 @Transactional 어노테이션을 붙였을 때, 우선권이라는 말이 살짝 이해가 안되서 질문드립니다.
우선권이라는게 join메소드가 제일 위에 있어서 하시는 말씀이신가요?? 제가 회사 프로젝트에서 @Transactional을 사용했을 때 예제처럼 class에 @Transactional(readOnly = true) 를 사용했는데 쓰기 기능을 하는 메소드에 @Transactional을 붙이니깐 readOnly false 붙여라? 라는 에러같은게 떴었던 것 같아서.... 질문 올립니다~_~;
답변 5
1
와.... 친절한 답변 너무 감사합니다.
저는 당연히 클래스 레벨이 우선이 되는거라고 생각했는데... 이 부분에 대해 다시 한번 찾아봐야겠네요!
너무너무 감사합니다 ( _ _)
0
0
아하 이해했습니다^^
클래스 레벨에 @Transactional이나 @Transactional(readOnly=true)를 적으면 모든 메서드에 다 적용됩니다.
그런데 특정 메서드만 다르게 적용하고 싶으면 해당 메서드 위에 @Transactional이나 @Transactional(readOnly=true)를 적으시면 됩니다.
클래스 레벨보다는 특정 메서드 레벨에 적어둔 것이 우선권을 가지고 적용되고, 해당 메서드는 클래스 레벨의 적용이 무시됩니다.
감사합니다.
0
0