※ 파일 전송에서의 기본 인코딩 방식 서버와 클라이언트는 기본 인코딩 방식으로 application/x-www-form-urlencoded 을 사용한다. 이는 문자열만을 주고받는 방식으로 위 이미지에서 처럼 클라이언트가 uid를 newlec, name을 dragon으로 서버로 전송할 경우 uid=newlec&name=dragon로 문자열을 전송한다. 하지만 파일과 같은 바이너리 파일들은 이런 문자열 형태로는 전송하기가 어려운데, 이를 극복하기 위해 나온 것이 multipart/form-data 인코딩 방식이다. 위 이미지처럼 하나의 문자열이 아닌 각 name마다 데이터별 별개의 구분을 주어 전송한다. 따라서 우리가 서버를 작성할 때, 파일을 받기 위해서는 multipart/form-data 인코딩 방식의..
인코딩
1. 웹에서 한글 파일이 깨지는 이유 톰캣은 기본적으로 ISO-8859-1이라는 방식으로 인코딩하여 문자를 전송한다. 이는 1바이트씩 전송을 수행하는데, 한 글자에 2바이트인 한글은 바이트가 나뉘기때문에 문자가 깨지는 것이다. 또한 웹서버에서는 UTF-8이라는 형식으로 2바이트로 문자를 전송해도, 웹 브라우저에서 다른 인코딩 방식을 지니고 있으면 한글이 제대로 출력되지 않는 문제가 발생한다. 2. 해결 방법 @WebServlet("/hello2") public class Nana extends HttpServlet{ @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletE..