서블릿 - HttpServletResponse

정민교·2022년 12월 7일
0

springmvc1

목록 보기
3/5

📒HttpServletResponse

✔️HttpServletResponse 역할

개발자가 직접 HTTP 응답 메세지를 만들려면 너무 힘들다.

우리는 HttpServletResponse 객체가 제공하는 메서드를 활용해서 객체에 필요한 값을 넣어두면 되고
알아서 응답 메세지를 만들 때 HttpServletResponse 객체가 사용된다.

HttpServletResponse 객체를 다음과 같이 활용 가능하다.

HTTP 응답 메세지 생성

  • HTTP 응답코드 지정
  • 헤더 생성
  • 바디 생성

편의 기능 제공

  • Content-Type, 쿠키, Redirect

✔️HttpServletResponse를 이용한 HTTP 응답 데이터

📌HTTP response body에 데이터 담기 - 단순 텍스트, HTML

response.getWriter().write()

단순 텍스트나 HTML을 응답 데이터로 반환할 때는 content-typetext/html로 지정해야 한다.

📌🌟HTTP response body에 데이터 담기 - 단순 텍스트, HTML

HelloData data = new HelloData();
 data.setUsername("kim");
 data.setAge(20);
 //{"username":"kim","age":20}
 String result = objectMapper.writeValueAsString(data);

HTTP 응답으로 JSON을 반환할 때는 content-typeapplication/json 로 지정해야 한다.
Jackson 라이브러리가 제공하는 objectMapper.writeValueAsString() 를 사용하면 객체를 JSON 문자로 변경할 수 있다.

참고⚠️

application/json 은 스펙상 utf-8 형식을 사용하도록 정의되어 있다.
response.getWriter() 를 쓰면 자동으로 charset-utf-8 추가 파라미터를 자동으로 추가한다.
`response.getOutPutStream()을 사용하면 그런 문제가 없다.

profile
백엔드 개발자

0개의 댓글