CODEDRAGON ㆍDevelopment/JSP
인코딩하는 방법
· URIEncoding 속성
· useBodyEncodingForURI 속성
Connector 엘리먼트에 URIEncoding 값
· 가장 많이 사용
· 67번째 라인에 있습니다. (85번라인에도 동일한 구문이 존재합니다.)
· 모든 GET 형태의 파라미터를 톰켓(tomcat)안의 서블릿에 던져줄 때 자동으로 URIEncoding에 설정한 케릭터셋으로 URLDecoding을 합니다
Servers/Tomcat v7.0 Server at localhost-config/server.xml
<Connector URIEncoding="EUC-KR" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
|
인코딩 설정
서블릿 파일이 저장된 파일 인코딩 타입에 따라서 지정해 줍니다.
/Servers/Tomcat v7.0 Server at localhost-config/server.xml
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/> |
<Connector URIEncoding="EUC-KR" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/> |
Connector 엘리먼트에 useBodyEncodingForURI 값
· useBodyEncodingForURI="true"로 되어 있다면 request.setCharacterEncoding()으로 설정한 케릭터셋으로 인코딩을 하게 됩니다. 만약 해당 request에서 request.setCharacterEncoding()을 설정하지 않았다면 URIEncoding에서 설정한 값을 이용합니다.
· useBodyEncodingForURI="false"이거나 설정되지 않고 URIEncodig이 설정되어 있으면 GET 형태의 파라미터는 항상 URIEncoding 값으로 인코딩을 합니다.
Servers/Tomcat v7.0 Server at localhost-config/server.xml
<Connector URIEncoding="EUC-KR" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" useBodyEncodingForURI="true"/> |
request.setCharacterEncoding("EUC-KR"); |
request.setCharacterEncoding()
request.setCharacterEncoding()은 인코딩을 위해 사용하는 org.springframework.web.filter.CharacterEncodingFilter에서 사용하고 있는 방식입니다.
CharacterEncodingFilter를 사용하면서 url-pattern 을 /*로 한 경우라면 모든 리퀘스트에 대해서 request.setCharacterEncoding()를 사용하고 있는 것과 같아서 URIEncoding으로 설정된 값은 사용될 경우가 없어집니다.
request.setCharacterEncoding("EUC-KR"); |
'Development > JSP' 카테고리의 다른 글
액션 태그, 액션 태그 종류 (0) | 2017.12.13 |
---|---|
include 디렉티브, include 디렉티브 구문, include 디렉티브 활용, 인크루트 파일의 확장자 .jspf (0) | 2017.12.13 |
Error-Server Tomcat v7.0 Server at localhost failed to start. - 해결방법2 (0) | 2017.12.12 |
웹 애플리케이션 서버(Web Application Server; WAS), 웹서버 vs WAS (0) | 2017.12.12 |
HTTP 프로토콜, HTTP 메소드(method), Get방식과 Post방식의 전송 차이 도식도, Get 방식, Post 방식 (0) | 2017.12.11 |