반응형
Servlet 한글(UTF-8) 인코딩 설정
서블릿에서 PrintWriter와 같은 클래스을 통해 한글을 입력하여 jsp 파일로 내보내는 경우, 그리고 폼 태그에서 입력한 값이 서블릿으로 넘어올 경우에 인코딩 설정이 되어 있지 않으면 한글이 정상적으로 출력되지 않습니다. 아래와 같이 서블릿의 메소드 시작 부분에 인코딩 설정을 해주면 정상적으로 출력됩니다.
response.setContentType("text/html; charset=utf-8");
response.setCharacterEncoding("utf-8");
request.setCharacterEncoding("utf-8");
@WebServlet("/UserHomeMain")
public class UserHomeMain extends HttpServlet {
private static final long serialVersionUID = 1L;
public UserHomeMain() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 넘어온 파라미터의 인코딩 설정을 UTF-8로 설정
request.setCharacterEncoding("utf-8");
// HTML이 UTF-8 형식이라는 것을 브라우저에게 전달
response.setContentType("text/html; charset=utf-8");
// 서블릿을 통해 생성되는 HTML 파일의 인코딩을 UTF-8로 설정
response.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
out.println("<script>");
out.println("alert('성공');");
out.println("</script>");
RequestDispatcher rd = request.getRequestDispatcher("index.jsp");
rd.forward(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
반응형
'Java Web > Servlet&JSP' 카테고리의 다른 글
[JSP] 메시지 출력 및 페이지 이동을 위한 JSP 작성 (0) | 2021.10.01 |
---|---|
[JSP] JSTL(JSP Standard Tag Library) 태그 정리 (0) | 2021.07.20 |
[JSP] form에서 값 넘기기 (0) | 2020.12.23 |
[JSP] 기본 태그 (0) | 2020.12.22 |
[JSP] JSP(Java Server Page)의 정의 (0) | 2020.12.22 |