@Transactional에 대해서 궁금합니다.
132
작성한 질문수 29
이전에 공부할 때 엔티티매니저에서 트랜잭션을 가져야 로직이 수행된다는 것을 알고 있었습니다.
그런데 이전에 JPA활용2편에 @Transactional을 따로 붙혀주지 않았는데 로직이 실행된걸로 기억하는데 @Service나 @Repository에 의해서 자동으로 트랜잭션이 걸리는 건가요?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. kongminoo님.
JPA에서의 트랜잭션 처리와 관련해 궁금증이 있으신 것 같습니다. 스프링 프레임워크에서는 일반적으로 @Transactional 애노테이션을 사용하여 트랜잭션을 관리합니다. @Service나 @Repository 어노테이션 자체가 트랜잭션을 직접 제공하는 것은 아니지만, 스프링이 자동으로 트랜잭션을 관리해주기 때문에 별도로 @Transactional을 명시적으로 선언하지 않더라도 기본 CRUD 메서드에서 트랜잭션이 열리게 됩니다.
관련 질문과 답변
그 외에도 클래스 레벨에서 @Transactional을 붙이면 해당 클래스의 모든 메서드에 트랜잭션이 적용되니, 로직에 따라 더 복잡한 트랜잭션 관리가 필요한 경우 이 점을 참고하시면 도움이 될 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
existsByUserIdAndProjectId vs existsByUserAndProject 중 어떤 방식이 적절할까요?
0
77
1
existsByUserIdAndProjectId vs existsByUserAndProject 중 어떤 방식이 적절할까요?
0
109
3
MemberRepository 구현체
0
61
1
pdf 표현 질문드립니다.
0
64
1
로그가 남지 않는 문제.
0
86
1
테스트 라이브러리가 강의는 junit4가 맞나요??
0
73
2
pdf 파일과 차이점이 있는 것같은데 문제 없나요?
0
73
2
@PrePersist, @PreUpdate 호출 시점 질문드립니다.
0
95
2
Sort 인터페이스는 잘 사용 안하나요?
0
52
1
스캔대상 질문드립니다.
0
46
1
하이버네이트6에서의 최적화에 이은 질문
0
88
1
save() vs saveAndFlush DB 통신 횟수
0
55
1
순수 JPA 리포지토리 코드 수정부분
0
87
2
bulk연산 후 flush하는 이유를 모르겠어요
0
153
3
bulk insert 질문입니다.
0
184
2
교만했던 것 같아요.
0
147
1
RESTful 강의는 안하시는 건지 궁금합니다.
0
150
2
동적 테이블에 대한 질문
0
87
1
영속성 전이와 연관관계
0
132
2
강의 10:25 질문
0
75
1
단건 update 질문
0
98
2
엔티티 와 도메인의 경계
0
129
1
UsernameOnlyDto 타입 type mismatch 오류
0
122
1
Projection 개념과 데이터 전달과정에 대해 질문 있습니다.
0
137
1





