Servlet / JSP ) 4. Servlet 출력 형식

60jong·2022년 4월 28일
0

Servlet / JSP

목록 보기
4/17

Server 공부 흐름

[Servlet] --HTML코드 출력 문제--> JSP --스파게티 코드 문제--> JSP MVC -> Spring MVC -> SpringBoot


브라우저의 Servlet 해석

브라우저가 응답을 받을 때 Servlet에 지정된 출력 형식이 없다면, 브라우저마다 자의적인 해석으로 Servlet을 출력.

@WebServlet("/hello")
public class Company extends HttpServlet {
    public void service(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {
        PrintWriter out = response.getWriter();

        for (int i = 0; i < 5; i++) {
            out.println("Hello Servlet");
        }
    }
}

를 예로 해서 /hello를 요청했을 때, 브라우저마다

  • html로 인식
    Hello Servlet
    Hello Servlet
    Hello Servlet
    
  • text로 인식
    Hello ServletHello ServletHello Servlet

이렇게 다를 수가 있다.

출력 형식 지정

(1) response.setCharacterEncoding("UTF-8");
(2) response.setContentType("text/html; charset=UTF-8");

추가하면

(1) 클라이언트는 응답을 받는 문서를 UTF-8로 인코딩해 받아야함을 시사한다.

(2) 서버가 클라이언트에게 응답을 보낼 때, "text"로 이루어진 "html"문서라는 것을 명시하고, 이 문서는
UTF-8 문자로 이루어져있음을 시사한다.

profile
울릉도에 별장 짓고 싶다

0개의 댓글