inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

게시글 목록 API - 페이지 번호 구현

안녕하세요 ! 강의 잘 듣고 있습니다.

해결된 질문

67

김태우

작성한 질문수 21

0

안녕하세요 선생님 강의 잘 듣고 있습니다 .


controller를 구현하실때 중복되는 부분을
전부 다 쓰신 이유가 따로 있으신가요 ?

예를 들어 ArticleController에서
@RequestMapping("/v1/articles")
public class ArticleController{

...
}

이런식으로 RequestMapping 애노테이션을 붙여 중복을 줄일 수도 있는데 선생님은 전부 다 그냥 쓰셔서 어떤 의도가 있는 것인지가 궁금합니다.

java mysql spring-boot kafka redis

답변 2

1

쿠케

태우님, 안녕하세요!

강의 잘 수강해주셔서 감사합니다!

 

서비스가 커질수록 API가 아주 많아질 수 있는데요,

그럴 때 API path가 하나로 합쳐져있으면 어떠한 외부 도구의 도움 없이도 해당 API 코드 찾기가 아주 편합니다.

이 정도는 딱히 문제될 만한 중복이라고 볼 수 없기도 하고, 이러한 이점으로 인해 full path를 다 적게 되더라고요!

0

인프런 AI 인턴

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

강의를 즐기고 계신다니 기쁩니다! 작성해주신 질문에 대해 설명드리겠습니다.

중복된 RequestMapping을 사용하신 이유

  1. 가독성 및 명시성: 모든 엔드포인트에 대해 @RequestMapping을 명시적으로 작성하는 것은 코드의 가독성을 높이고 명시성을 강화하는 데 도움이 될 수 있습니다. 특히, 프로젝트의 규모가 크고 복잡할수록 명확하게 경로를 드러내는 것이 유지보수에 유리합니다.

  2. 개별 엔드포인트 관리 용이성: 각 엔드포인트의 특성을 명확히 표현하고 싶을 때, 중복되는 부분을 줄이기보다는 각 엔드포인트마다 경로를 명확히 기술하는 것이 유리할 수 있습니다. 이는 엔드포인트의 변경이나 수정이 필요할 때 개별적으로 수정이 용이하다는 장점이 있습니다.

  3. 프로젝트 팀의 코딩 스타일: 모든 개발자들이 동일한 스타일을 따르기보다는, 팀 내 합의된 스타일 또는 개인 선호에 따라 코드를 작성할 수 있습니다. 따라서, 필요에 따라 중복된 부분을 작성했을 가능성도 염두에 두셔야 합니다.

이와 관련하여 흥미로운 실제 사례들이 궁금하시다면 아래 링크를 참고하실 수 있습니다:

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

@Version 어노테이션이 붙은 필드는 낙관적 락이든 비관적 락이든 업데이트가 됩니다.

0

29

1

consumer에서 에러가 발생할 경우 데이터 유실 문의

0

47

2

게시글 테스트 데이터 삽입

0

49

2

정렬, 필터, 검색 등의 조건이 붙을 경우 최적화할 수 있는 방법이 무엇이 있을까요?

0

102

2

좋아요 기능 정합성 보장 방법

0

96

2

좋아요 동시성처리 최적의 선택?

1

133

2

프론트엔드 msa 환경 api 주소 통합? 과 서버끼리 통신 방식에대해

0

91

2

안녕하세요 무한스크롤 강의듣다가 질문이 있습니다.

0

58

1

조회수 조회 로직 질문

1

67

2

비로그인 유저도 어뷰징 방지 정책

1

72

2

CommentServiceTest의 테스트 로직 질문

0

54

2

무한 스크롤 방식에서 페이지 번호 방식 쿼리의 문제점 의문

1

73

2

path 쿼리 관련 질문드립니다!

0

59

2

antigravity 에디터를 쓰신다면 종료해주세요

1

123

0

프로젝트 구조

0

88

2

article_like_count api test

0

77

2

이벤트 페이로드 객체의 생성 방식이 팩토리 메서드 패턴이 아닌 빌더 패턴인 이유가 궁금합니다!.

0

104

2

[33. 좋아요 수 구현] 에서 테스트 하는 화면 동시성 문제

0

90

2

findByPath에서 articleId로도 검색을 해야 할 것 같아요.

0

91

3

jpa ddl-auto none을 하는 이유와 join 방법

0

97

2

팩터리 메소드와 response 객체 사용 이유가 궁금합니다!

0

90

2

커서 기반 페이지네이션 과 무한 스크롤링

0

109

2

게시글 생성 로직에서 오류 발생시 redis 게시글 수 되돌리기

0

97

2

멀티 모듈이 아닌 MSA 환경에서 common

0

155

2