Controller Anotation

@RestController

 - 컨트롤러를 JSON을 반환하는 컨트롤러로 만들어줍니다.

 - 예전에는 @ResponseBody를 각 메소드마다 선언했던 것을 한번에 사용할 수 있게 해준다고 생각하면 됩니다.

 

@GetMapping

 - HTTP Mehood인 Get의 요청을 받을 수 있는 API를 만들어 줍니다.

 - 예전에는 @RequestMapping(method=RequestMethod.GET)으로 사용되었습니다.

 

@RequestParam

 - 외부에서 API로 넘긴 파라미터를 가져오는 어노테이션입니다.

 - 여기서는 name(@RequestParam("name"))이란 이름으로 넘긴 파라미터를 메소드 파라미터 name(String name)에 저장하게 됩니다.

 

@RequiredArgsConstructor

 - 선언된 모든 final 필드가 포함된 생성자를 생성해 줍니다.

 - final이 없는 필드는 생성자에 포함되지 않습니다.

 

@Controller

 - 클래스를 Bean으로 등록하는데 사용자의 요청을 처리하는 컨트롤러로 사용하겠다는 추가적인 의미를 부여하는 스테레오타입 어노테이션(@Repository, @Service, @Controller, @Component)

 - 스프링 웹 서블릿에 의해 웹 요청을 처리하는 컨트롤러 빈으로 선정 

 

@PathVariable

 - URI 매핑에서 템플리 변수를 처리하고 이를 메서드 매개변수로 설정

 - URI /posts/update/{id} 에서 {id}가 변수. 이를 @PathVariable Long id 또는 @PathVariable("id") Long myId 처럼 설정가능

 

@LoginUser 는 기본 어노테이션이 아닙니다. 임의로 만든 커스텀 어노테이션 입니다.

 

@PutMapping

 - HTTP Mehood인 PUT의 요청을 받을 수 있는 API를 만들어 줍니다.

 

@DeleteMapping

 - HTTP Mehood인 Delete의 요청을 받을 수 있는 API를 만들어 줍니다.

 

@RequestBody

  - HTTP 요청 Body안에 JSON을 자바객체(VO, DTO)로 전달받을 수 있다.

 

 

 

이 글을 공유하기

댓글

Designed by JB FACTORY