Section 1. HttpServlet Response 출력
1. HttpServlet Response 출력
- HttpServlet Response 객체를 이용하여 서블릿에서 직접 문서 출력
![](https://velog.velcdn.com/images%2Fcodren%2Fpost%2F78deed27-169f-472a-bbf9-5ab5a860cdc3%2Fimage.png)
2. HttpServlet Response 원리
- 스프링 Front Controller 가 url 요청에 맞게 함수를 매핑할 때 해당 함수의 매개변수가 존재하면 해당 매개변수에 맞는 데이터를 인수로 보냄
![](https://velog.velcdn.com/images%2Fcodren%2Fpost%2Fdcd7a66b-a638-473b-af6b-1c99f7c83353%2Fimage.png)
Section 2. ResponseBody 출력
1. @ResponseBody Annotation 출력
- 반환되는 문자열이 view 의 정보가 아니라 페이지에 직접 표시될 body 부분이라고 지정
- 반환 자료형 타입을 문자형 String 으로 변경
![](https://velog.velcdn.com/images%2Fcodren%2Fpost%2F2aca8277-8590-4494-b613-6501f55595ae%2Fimage.png)
- 결과화면
![](https://velog.velcdn.com/images%2Fcodren%2Fpost%2Fc61b3ecc-e670-4621-8fc5-ece24f8364c4%2Fimage.png)
Section 3. RestController 출력
1. @RestController Annotation 출력
- RestController 어노테이션 지정시 내부 메소드 ResponseBody Annotation 효과
- 스프링은 기본적으로 bean 생성할 때 클래스 이름으로 id를 지정하므로 패키지가 달라도 동일한 이름의 클래스가 존재한다면 오류 발생 -> 식별자 지정 필요 (명시적 id 부여)
![](https://velog.velcdn.com/images%2Fcodren%2Fpost%2F1006dc40-b7df-419b-86bc-aefd5007ef1a%2Fimage.png)
2. 한글 깨짐 수정
- url 매핑을 찾은 후에 결과를 보낼 때 메시지를 변환하는 태그를 이용하여 UTF-8 지정
![](https://velog.velcdn.com/images%2Fcodren%2Fpost%2Fcc02570f-c13e-4616-879f-98b2a8370503%2Fimage.png)
3. HttpMessageConverter
- 추후 Spring Boot 에서 ResponseBody 또는 RestController Annotation 지정시 자동 수행
- 기본 문자처리 - StringHttpMessageConverter
- 기본 객체처리 - MappingJackson2HttpMessageConverter