Encoding (2) 썸네일형 리스트형 Parameter, Form Data에 담은 한글이 깨지는 문제 해결 사용자가 한글을 서버로 보냈을 때 한글이 깨지는 문제가 발생합니다. 이유는 브라우저가 UTF-8로 인코딩해서 데이터를 서버로 보냈을 경우 톰캣은 기본적으로 ISO-8859-1 방식(한 글자 1바이트)으로 읽기 때문입니다. 깨진 문자를 다시 출력해서 브라우저에서 깨진 한글이 보이는 것입니다. 해결책 : 파라미터를 가져오기 전에 인코딩을 UTF-8로 설정하면 됩니다. request.setCharacterEncoding("UTF-8"); 다른 해결책은 톰캣의 server.xml에서 인코딩을 UTF-8로 설정하면 됩니다. 전체 소스 코드 Reg.java @WebServlet("/reg") public class Reg extends HttpServlet { @Override public void service .. Servlet에서 인코딩 방식과 컨텐츠 타입을 지정해야 하는 이유 Servlet에서 인코딩 방식과 출력 형식을 지정 안 하는 경우 다음과 같은 현상이 발생합니다. 인코딩 방식을 지정 안 하는 경우 : 한글이 깨짐 콘텐츠 타입을 지정 안 하는 경우 : 브라우저가 문서의 형식을 자의적으로 해석하기 때문 이 문제는 다음 서블릿 실행을 통해서 발생했습니다. 해결책과 이유를 알아보도록 하겠습니다. @WebServlet("/hello") public class HelloServlet extends HttpServlet { @Override public void service (HttpServletRequest request , HttpServletResponse response) throws IOException, ServletException{ PrintWriter out = .. 이전 1 다음