자바 클래스에서 PrintWriter 객체를 선언한 후,

해당 객체의 인스턴스를 통해 println 메소드를 이용하여 response 범위로 alert을 선언했는데

인코딩이 되지 않았다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
protected void doPost(HttpServletRequest request, HttpServletResponse response)
                                        throws ServletException, IOException {
    String url = "";
    
    //PrintWrtier에서 한글 인코딩이 깨지는 경우 셋팅
    //반드시 PrintWriter 객체 선언하기 전에 셋팅해줘야 함
    response.setCharacterEncoding("utf-8");
    response.setContentType("text/html; charset=UTF-8");
                
    //alert 띄우고 리스트로 돌아가서 리스트 새로고침
    PrintWriter out = response.getWriter();
                
    url = "GetAllBookInfo";
                
    out.println("<script>");
    out.println("alert('도서를 삭제했습니다.')");
    out.println("location.href='" + url + "';");
    out.println("</script>");
    out.flush();
}
cs

 

PrintWriter 객체를 선언한 후 CharacterEncoding, ContentType을 setter로 초기화 했었는데도 전혀 되지 않았다.

반드시 PrintWriter 객체를 선언하기 에 response 객체 메소드들을 설정해줘야 인코딩이 깨지지 않는다.

+ Recent posts