inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Trong thực tế! Phát triển ứng dụng quản lý thư viện với Kotlin và Spring Boot (tái cấu trúc dự án Java)

Bài học 39. Sử dụng Querydsl - Phương pháp thứ hai

BookQueryDslRepository에 @Repository 애너테이션이 아니라 @Component 애너테이션을 사용하신 이유가 궁금합니다.

Đã giải quyết

433

hanbin10184700

6 câu hỏi đã được viết

1

안녕하세요. 친절하고 좋은 설명 덕택에 저번 기본편부터 이번 실전편까지 강의를 재미있게 듣고 있습니다.

 

제목 그대로, @Component가 아니라 @Repository 애너테이션을 붙이는 편이 더 낫지 않나 해서 질문 드립니다:

그렇다고 생각했습니다.

 

저번 시간의 경우 QueryDslRepointerface로 만들고, 해당 인터페이스를 이용해 기존 Repo와 연결하는 방식을 사용했었는데, 그 경우에는 @Repository 애너테이션이 붙는 것으로 처리된다(최종적으로는 `@JpaRepository`를 extends한 것이 빈으로 등록되니까요)고 알고 있습니다. QueryDSL 2편과 마지막 편에서 QueryDslRepository@Component를 붙이신 것이 어떤 이유인지 궁금합니다.

 

감사합니다.

spring kotlin java spring-boot refactoring

Câu trả lời 2

1

lannstark

안녕하세요, 한빈님!! 크으~~ 너무 좋은 질문이십니다! 😊

 

저는 사실 다음 글과 같은 이유로 @Repository 를 붙이는 것보다는 @Component 를 붙이는 것을 선호합니다!!

https://www.inflearn.com/questions/650061

 

요약드리자면,

  1. @Repositoy 가 자동으로 변환해주는 예외 때문에 암시적인 처리가 발생해 의도하지 않은 동작을 경험한 적이 간혹 있었고

  2. 명시적인 예외 처리를 하는 것을 선호하기

때문입니다!!

 

물론, 제 개인적인 생각이고 또 다른 분들은 @Repository 를 선호하시기도 하더라고요!!!

(저 역시 팀 차원에서 Align이 맞는다면 100% 따르는 편입니다 ㅎㅎㅎ)

 

답변이 되었다면 좋겠습니다!! 혹시라도 더 궁금하신 내용 있으시다면, 편하게 질문 주세요!!

편안한 밤 되세요, 감사합니다~!! 🙏

0

hanbin10184700

헉, 정신 없이 지내다가 답변이 달린 줄도 모르고 있었네요.

예외 번역 때문이었군요. 감사합니다! 덕분에 의문이 좀 풀렸습니다.

안녕하세요 혹시 프론트 코드 제공받을 수 있을까요?

0

68

2

실행이 안되네요

0

66

2

프론트 영역 보는법

0

51

2

companion object

0

78

2

Custom 레프직토리 형식

0

57

2

Querydsl 도입

0

67

2

fetch join DISTINCT 중복제거

1

83

2

표준 예외와 커스텀 예외 사용 전략 질문

0

86

3

이 질문이 왜 없는지 이해가 안 되지만 문제 인식 및 해결 방법 남깁니다.

1

177

2

테스트를 위한 코드

1

105

2

프로젝트 실행 에러

0

151

2

PDF 문서에 오타가 있어서 알려드립니다.

1

102

1

enum질문

1

86

1

테스트 후 AfterEach 함수에서 나오는 쿼리

0

136

2

테스트 fixture

1

210

2

./gradlew test 실행시 인식할수 없다고 뜹니다.

0

141

1

test 코드 실행시 경고가 발생합니다.

0

140

1

13강 User Kotlin 변환중

2

170

3

'추가 - 코프링과 플러그인' 강의 7:46 allopen 관련 질문

2

174

1

-

0

141

2

4:28 build.gradle 수정 시 kotlin-reflect관련 implementation 추가 해야할까요?

0

312

3

junit import 불가

0

273

3

테스트 코드와 관련하여 질문이 있습니다.

1

218

1

hibernate가 select를 두번 하는 이유

0

240

1