티스토리 뷰

안녕하세요. 오늘은 간단하게 Spring 4.3버전 이후로 추가된 @GetMapping, @PostMapping, DeleteMapping, @PutMapping 및 @PatchMapping에 대해서 간단히 알아보고 소개하는 시간을 가져보려고 합니다.



1. 소개


Spring 4.3 버전에 추가된 내용으로는 기존의 @RequestMapping(value = "/", method="...")의 어노테이션의 사용을 조금 더 명시적고 효율적인 방법으로 사용하기 위해 @GetMapping, @PostMapping, DeleteMapping, @PutMapping, @PatchMapping의 메소드가 생기게 되었습니다.



2. 사용 방법


기본적인 작동 원리로는 GET의 HTTP(S) request를 처리하는 @GetMapping, POST의 HTTP(S) request를 처리하는 PostMapping, DELETE의 HTTP(S) request를 처리하는 @DeleteMapping, PATCH와 PUT의 HTTP(S) request를 처리하는 @PutMapping과 @PatchMapping으로 사용됩니다.


사용 방법은 아래의 간단한 예제를 통해서 알아보도록 하겠습니다.



- 기존의 요청 처리 방법

@RequestMapping(value = "/test", method = RequestMethod.GET) // POST, DELETE, PUT, PATCH 사용 가능
public void TestCase(HttpServletRequest request, HttpServletResponse response) {
   // do something
} 



- @GetMapping 사용 방법

@GetMapping(value = "/test2")
public void TestCase2(HttpServletRequest request, HttpServletResponse response) {
  // do something
}



- @PostMapping 사용 방법

@PostMapping(value = "/test3)
public void TestCase3(HttpServletRequest request, HttpServletResponse response) {
  // do something
}



- @DeleteMapping 사용 방법

@DeleteMapping(value = "/test4")
public void TestCase4(HttpServletRequest request, HttpServletResponse response) {
  // do something
}



- @PutMapping 사용 방법

@PutMapping(value = "/test5")
public void TestCase5(HttpServletRequest request, HttpServletResponse response) {
  // do something
}



- @PatchMapping 사용 방법

@PatchMapping(value = "/test6")
public void TestCase6(HttpServletRequest request, HttpServletResponse response) {
  // do something
}


위에서 본 것과 같이 기존의 코드 사용하는 방법에 비해서 조금 더 효율적으로 어노테이션을 통해 request 메소드를 구현하실 수 있습니다. 기존의 사용법에 익숙하신 분들은 기존의 방법 처럼 사용하셔도 되고, 새롭게 추가된 어노테이션을 사용해보셔도 될 것 같습니다.


오늘은 새롭게 추가된 어노테이션의 대해서 간단한 설명 및 예제를 통해서 알아보았고, 이것으로 포스팅을 마치도록 하겠습니다.



참고 사이트 : https://www.baeldung.com/spring-new-requestmapping-shortcuts