inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[1.5탄] 옆집 개발자와 같이 진짜 이해하며 만들어보는 첫 Spring Boot 프로젝트

우리는 이제 줄임말을 쓸 수 있는 멋진 사람들

@GetMapping은 단순 축약일까요? 다른 차이는 없나요?

94

mm

작성한 질문수 1

1

안녕하세요, 이번 강의를 듣다가 문득 궁금한 점이 생겨서 질문 드립니다.

 

강의에서 @RequestMapping(method = RequestMethod.GET)을 @GetMapping으로 축약할 수 있다고 배웠습니다.

그런데 이런 축약 어노테이션들이 단순히 가독성만을 위한 것인가요? 아니면 성능상의 차이도 있나요? 왜 굳이 이렇게 나뉘어져서 존재하는지 궁금합니다.

java spring rest-api spring-boot

답변 2

0

송아지할때송아김송아입니다.

안녕하세요 mm님~! 😊 연휴는 잘 보내셨나요? 긴 연휴의 호흡에도 공부하고 계셨군요!! 👏🏻👏🏻

mm님이 짚어주신 것처럼, 축약 어노테이션들은 단축키 역할입니다!

 

많이 사용되는 Method들은 굳이 길게 쓰지 않고 간단하게 쓸 수 있다는 편의성을 장점으로 들 수 있습니다!

 

Http Method들은 크게 9가지로 정리됩니다.

  1. 대표적인 Method : Get, Post, Put, Patch, Delete
    이 친구들은 많이 쓰이는 만큼 축약 어노테이션을 제공하고 있습니다.

  2. 조금 부가적으로 분류되는 Method들인 Head, Options, Connect, Trace 들은
    축약 어노테이션이 없습니다.
    (참고 링크 - 스택오버플로우 'Why is @HeadMapping unavailable in Spring MVC?')

 

즉, 많이 사용하는 만큼 빠르고 간단하게 쓰기 위해 스프링이 제공하는 것이라고 느낄 수 있겠네요!

말씀하신 것처럼 가독성도 좋아지구요!

 

좋은 질문 주신 덕분에 다른 분들과도 나눌 수 있게 되었어요. 감사합니다!

 

갑자기 쌀쌀해진 날씨에 건강 잘 챙기시구요 mm님~!

그럼 또 뵙겠습니다 행운 가득한 하반기 되세요🍀

 

감사합니다. 김송아 드림

 

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. mm님, 질의하신 사항에 대해 답변드리겠습니다.

@GetMapping 등의 축약 어노테이션은 주로 가독성과 코드의 간결함을 위한 것이며, 성능상의 차이는 없습니다. Spring 프레임워크에서는 HTTP 메서드와 관련된 어노테이션을 쉽게 사용할 수 있도록 @GetMapping, @PostMapping 등을 제공합니다. 이러한 축약형 어노테이션은 개발자가 의도를 보다 명확하게 표현할 수 있고, 코드의 가독성을 높여줍니다.

이러한 어노테이션들이 존재하는 이유는 코드의 직관성을 높이고, 여러 개발자가 협업하는 동안 코드의 의도를 명확하게 표현할 수 있도록 하기 위함입니다. 예를 들어, @GetMapping을 사용하면 HTTP GET 메서드를 처리하는 것을 바로 알 수 있어 명확합니다.

Spring 공식 문서를 참고하시면 좀 더 자세한 설명을 확인할 수 있습니다.

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

안녕하세요 치킨 디도스 이벤트 보고 흉내내보려 들어왔습니다..

0

7

1

15강 12-3) 값 제출후 mysql 저장이 안됩니다.

0

9

2

47번 리턴 관련 질문

0

15

1

실무 내용 문의드려요

0

21

2

IO활용-회원관리예제1 샘플코드 문의

0

14

1

join에대해 질문드립니다.

0

18

1

pg사가 있다고 가정하면

0

25

1

코드 질문

0

25

1

중급 1편 학습 방향에 대해 조언 부탁드립니다

0

32

1

To-Do App

0

27

1

twitterdb 연결이 안돼요

1

27

2

강의노트 접속 불가

0

26

2

Kafka Cluster 구성도 질문

0

22

1

SingletonService가 JVM이 뜰 때 생성되는게 맞나요?

0

33

2

시큐리티 필터 설정 질문입니다!

2

46

1

강의가 싱크가 안맞는것 같아요..

0

30

1

26년 1회차 기출 강의

0

50

2

임포트 오류

0

34

2

전자책으로 구매인증 가능할까요?

0

72

1

이제 인프런에서 강의 더 안산다. 후져....

0

42

1

기출문제

0

55

1

관리자 페이지 상품 삭제 API

1

52

1

섹션 5 의 18 대췅

0

56

1

강의자료

1

96

2