[출저]
http://darkhorizon.tistory.com/entry/charset-%EA%B3%BC-pageEncoding%EC%97%90-%EB%8C%80%ED%95%B4



<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR" %>

 - contentType  속성 : JSP파일 출력시 문자코드 및 Content-Type 헤더에
                                출력할 문자코드명을 지정

  - pageEncoding 속성 : JSP파일 작성시의 문자코드를 지정

자바가상머신(JVM)의 내부에서는 모든 문자열이 Unicode로 표현된다.
그러므로 서블릿 콘테너는 JSP파일을 JVM에 읽어들일 때 JSP파일의
문자코드(예를들어 EUC-KR)에서 Unicode로 변환한다.
그리고 웹브라우저에 HTML문서를 출력할 때는 Unicode로부터 출력파일의
문자코드로 변환한다.


■contentType 속성의 역할


contentType 속성은 "JSP파일 출력시의 문자코드", "Content-Type 헤더에
지정할 문자코드"의 양쪽을 지정하는 기능을 갖는다.
상기 코드와 같이 기술하면 서블릿 콘테너는 콘텐츠를 EUC-KR로
Encode하여 출력한다.
또한 동시에 Content-Type 헤더를 통하여 문자코드 종류를 웹브라우저에
전달한다.

 

■pageEncoding 속성의 역할


pageEncoding 속성은 "JSP파일 작성시의 문자코드"를 지정하기 위한
속성으로서 JSP 1.2사양(Tomcat 4.0) 이후부터 지원된다.
예를들어, 윈도우즈에서 작성한 JSP파일이면 EUC-KR를 지정하면 된다.
UNIX의 일본어 에디터로 작성한 것이라면 EUC-JP를 지정하면 바르게 처리될
것이다.

pageEncoding 속성을 생략한 경우, JSP 1.2 사양에서는
"contentType 속성에서 지정된 문자코드로 JSP파일을 읽어들임"
이라고 규정되어 있다.
그러므로 보통은 생략해도 문자깨짐이 발생할 염려는 없다.
그렇지만 EUC-KR -> Unicode -> EUC-KR 의 문자코드 변환은
기억해 둬야 한다.
또한 include 된 JSP파일에서는 contentType 속성을 기술할 수 없으므로
pageEncoding 속성을 이용할 필요가 있다.
이 문제에 대해서는 다음회에 설명할 예정이다.
덧붙여, contentType 속성과 pageEncoding 속성에는 각기 다른 문자코드를
지정할 수도 있다.
예를들어 ShiftJIS로 작성한 JSP파일을 EUC-JP,UTF-8등으로 출력하는 것도
가능하다.
Posted by gt1000

블로그 이미지
gt1000

태그목록

공지사항

어제
오늘

달력

 « |  » 2024.3
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함