inflearn logo
강의

Course

Instructor

Complete Guide to Server Developer Assignments - Part 1

Implement Search Statistics Function - Statistics by Search Term

서비스에 @Transactional 애노테이션을 사용하시지 않는 이유가 궁금합니다

Resolved

156

leejinwoo1126

5 asked

0

안녕하세요 궁금한게 있어 질문 남깁니다.

 

보통 데이터베이스 사용시 서비스 단에 @Transactional을 관습적으로 붙여왔는데, 서비스 로직을 작성하실때 @Transactional 애노테이션을 사용하시지 않은 건 비즈니스 로직이 너무 간단하기 때문에(트랜잭션 논리 단위로 묶을 필요없을 정도로) 생략하신거라고 이해하면 될까요?

 

답변 감사합니다

java spring spring-boot database

Answer 2

1

J Tech

안녕하세요 진우님~

데이터베이스에 접근하더라도 읽기작업만 일어나는경우에는 readOnly true 옵션으로 작업의 명확성과 최적화를 위해 애노테이션을 달아주시는게 좋겠습니다. (서비스레이어라고 하더라도 데이터베이스에 접근하지 않는경우에는 붙일 필요가 없겠구요) 조회담당 서비스에 빠져있다면 추가하셔서 진행부탁드리겠습니다 🙏

0

qheogus55

BookApplicationService에 @Transactional을 달아야 하나요?

그 하위 DailyStatCommandService 같은곳에 트랜잭션을 달아야 하나요 ??

0

J Tech

실제로 트랜잭션을 시작할 DailyStatCommandService 요기에 달아주시면 될 것 같습니다 🙏

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. 이진우님,

@Transaction 애노테이션의 사용 여부에 관한 질문을 주셨군요.

서비스 단에서 @Transactional 애노테이션을 사용하지 않은 이유로 비즈니스 로직의 복잡성과 관련이 있을 수 있습니다. 데이터베이스 작업에서 하나 이상의 단위를 트랜잭션으로 묶어야 할 경우 @Transactional을 주로 활용합니다. 트랜잭션은 모든 작업의 성공 또는 실패 여부에 따라 데이터를 일관되게 유지하는 데 도움이 됩니다.

그러나 매우 간단한 비즈니스 로직에서는 트랜잭션을 이용한 복잡한 처리가 필요하지 않기 때문에 생략될 수 있습니다. 이런 경우, 데이터의 일관성을 유지할 필요가 없고 데이터 무결성 문제가 발생할 가능성이 적기 때문이죠.

추가적으로 더 많은 정보가 필요하시다면, 아래 관련 질문들을 확인해 보시는 것도 좋습니다:

  1. 멀티모듈 구성에서 하위 모듈은 java 모듈로 하는 이유가 궁금합니다. - 모듈 간의 의존성 및 프로젝트 구조 관련 설명.
  2. 비즈니스 로직 담당 서비스 - 비즈니스 로직 분리와 CQRS 패턴에 대한 설명.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

NaverBookRepository.class 의 위치에 따른 모듈간의 의존성에 대해 질문드립니다.

1

32

2

패키지 vs 모듈 선택 기준

0

51

2

Kotlin 테스트 프레임워크

0

82

2

import 오류?

0

71

2

JSON 역직렬화

0

66

2

Spring Cloud 버전 관리 문제

0

271

2

AsyncExcutor 설정값 질문

0

82

2

17강 api서버구현2 질문있습니다.(ai답변이 이상합니다.)

0

117

2

16강 api서버구현 질문있습니다.

0

77

2

14번쨰 부분 중 질문드립니다..<ai답변으로 해도 안되요>

0

144

2

.

0

144

1

NaverClientTest 질문있습니다.

0

179

2

멀티모듈 구성 질문입니다.

0

209

3

멀티모듈 구성 강의에 대해 질문이 있습니다.

0

214

3

SPOCK 의존성 추가 후 Generate Test 옵션 미노출

0

202

3

멀티모듈 지식 습득에 관하여 질문 드립니다.

0

250

2

Async Config 테스트컨트롤러의 코드의 동작이 안되는거 같습니다.

0

223

3

author 배열이 비어서 오는 경우가 있으니 참고하세요.

0

190

3

커밋 끊으면서 해주시는거 너무 좋네요.

1

160

2

비즈니스 로직 담당 서비스

0

198

2

모의과제 소개

0

179

2

cqrs에 관하여

1

256

2

멀티모듈 문의드립니다.

0

264

2

클린한 아키텍쳐에 관하여

1

234

2