[Spring Boot] 웹 서버 어노테이션 정리 @RequestBody @ResponseBody란?

2021. 3. 30. 09:53개발/[Spring Boot] 스프링 부트 개발

반응형

스프링 부트 공부를 하면서 확실하게 알아야하는 어노테이션들을 공부해서 정리한다.

 

@Controller

이 클래스가 Controller라는 것임을 명시해준다.

@RestController

이 클래스의 모든 메소드들이 @ResponseBody 어노테이션을 가지게된다.

@ResponseBody

데이터를 반환할 때의 값을 Body에다가 넣어서 Json으로 반환한다

-> 자바객체를 http응답 body로 전송한다

@RequestBody

Request에 Body에 Json이나 xml로 전송하여 매핑할 때(전송 된 것을 받을 때) 사용하는 어노테이션

@RequestParam

http://localhost:8080/info?name=철수&age=17&sex=male

과 같은 uri로 rest api통신을 할 때, @RequestParam("name") name: String, @RequestParam("age") age:Int, @RequestParam("sex") sex:String으로 매핑할 수 있다.

즉 key=value 와 같이 key를 괄호안에 넣어 매핑한다.

하지만 파라미터가 너무 많은 경우에는 Map을 써서 매핑해주기도 한다.

@RequestMapping

요청에 대해 매핑하는 어노테이션 

이름 타입 설명
value String[] URL 값으로 매핑 조건을 부여 (default)
method RequetMethod[]

HTTP Request 메소드 값을 매핑 조건으로 부여
사용 가능한 메소드는 GET, POST, HEAD, OPTIONS, PUT, DELETE, TRACE (7개)

params String[] HTTP Request 파라미터를 매핑 조건으로 부여
consumes String[] 설정과 Content-Type request 헤더가 일치할 경우에만 URL이 호출됨
produces String[] 설정과 Accept request 헤더가 일치할 경우에만 URL이 호출됨

출처:sarc.io/index.php/development/1139-requestmapping

 

 

@RequestMapping 어노테이션에 대하여

[{"id":"9","listid":"1","parentid":"0","videosource":"","videoid":"","imageurl":"","title":"","description":"","custom_imageurl":"","custom_title":"","custom_description":"","specialparams":"","lastupdate":"0000-00-00 00:00:00","allowupdates":"1","status":

sarc.io

@GetMapping

Get Method로 매핑시켜줄 때 사용한다.

ex) @GetMapping("/info")

@PostMapping

Post Method로 매핑시켜줄 때 사용한다

ex) @PostMapping("/info")

반응형