IT수업/STS3

IT 수업 20주차 (129) RestController

워제하 2024. 5. 8. 10:58

 

● RestController

RESTful 웹 서비스를 제공하는 컨트롤러

controller와 차이점은 RestController는 controller와 달리 Response Body가 생성되는 방식이다.

 

@RestController 어노테이션은 말 그대로 @Controller와 @ResponseBody가 합쳐진 어노테이션이라고 생각하면 된다. @Controller와 다르게 반환하려는 주류는 JSON 형태의 객체 데이터다. REST API를 개발할 때 주로 사용하며 마찬가지로 ResponseEntity로 감싸서 주로 반환한다.

 

 

 

비동기 요청과 같이 쓴다.

 

 

restcontroller 패키지를 만들고 그 안에 SimpleRestController.java 클래스를 만들어 준다.

 

 

 

 

 

 

 

 

servlet-context.xml 에 가서 restcontroller를 추가해준다.

 

 

SimpleRestController에서 GetMapping을 작성해보고 실행시켜본다.

 

그러면 html 형식으로 보내지는 걸 확인 할 수 있다.

 

 

 

이번에는 produces=MediaType을 적어 확인해본다.

 

그러면 text/plain으로 잡는 것을 확인 할 수 있다.

 

 

 

json 형식으로 받는 maven들을 다운받아준다.

- jackson Databind

 

 

- jackson Dataformat XML

 

 

 

- Gson

 

 

pom.xml에 다 넣었으면 MAVEN UPDATE PROJECT 해준다.

 

 

 

그리고 코드를 작성하여 실행하면 dto형식으로 받아도 json형식으로 받는 것을 확인 할 수 있다.

 

 

 

이번에는 XML 형식으로 받아본다.

 

 

xml리스트 형식으로 받아본다.

 

 

 

이번에는 list형식인데 true/false로 받아본다.

 

- true 했을 때

 

 

- false 했을 때

 

 

 

 

 

 

 

 

 

 

 

 

 

 

참조 : https://velog.io/@dyunge_100/Spring-Controller%EC%99%80-RestController%EC%9D%98-%EC%B0%A8%EC%9D%B4