page 디렉티브의 contentType 속성은 JSP 페이지가 생성할 문서의 타입을 지정합니다. contentType 속성의 값은 다음과 같이 구성됩니다.
TYPE 또는 TYPE; charset=캐릭터 셋 |
TYPE은 생성할 응답 문서의 MIME 타입을 입력합니다. JSP에서 주로 사용되는 MIME 타입으로는 "text/html", "text/xml", "text/plain"이 있습니다. 아래는 HTML 문서를 생성하는 경우 contentType 속성의 설정 예 입니다.
<%@ page contentType="text/html" %> |
contentType 속성을 설정하지 않을 경우 기본값은 "text/html" 입니다. 그리고 '; charset=캐릭터 셋' 부분은 생략이 가능합니다. 캐릭터 셋 부분을 생략할 경우 기본 캐릭터 셋인 ISO-8859-1을 사용하게 됩니다. 국내에서는 주로 한글로 구성된 HTML 문서를 생성하는 JSP 페이지를 작성하게 되는데, 한글로 구성된 HTML 문서를 생성할 때에는 다음과 같이 euc-kr 캐릭터 셋을 사용하게 됩니다. 참고로 캐릭터 셋을 입력할 때에는 대소문자를 구분하지 않습니다.
<%@ page contentType="text/html; charset=euc-kr" %> 또는 <%@ page contentType="text/html; charset=EUC-KR" %> |
UTF-8 캐릭터 셋을 이용하는 XML 문서를 생성하고 싶은 경우에는 다음과 같이 contentType 속성에서 "text/xml" MIME 타입을 사용하고 charset의 값으로 UTF-8 을 지정하면 됩니다.
<%@ page contentType="text/xml; charset=utf-8" %> |
캐릭터 셋을 올바르게 입력하지 않으면 응답 결과에서 글자가 올바르게 출력되지 않게됩니다. 예를 보도록 하겠습니다.
<%@ page contentType="text/html; charset=iso-8859-1" %> <%@ page import="java.util.Date" %> <% Date now = new Date(); %> <html> <head><title>현재 시간</title></head> <body> 현재 시각: <%= now %> </body> </html> |
실행을 해보시면 위 예제에서 '현재 시각' 이라는 부분이 글자가 제대로 표현이 안되는것을 확인 할 수 있습니다.
그리고 마우스 오른쪽 버튼을 클릭하시면 [인코딩] 이 보이는데 인코딩 들어가시면 서유럽어(ISO) 가 선택되어 있는것을 볼 수 있습니다. 그래서 '현재 시각' 이라는 한글이 제대로 표현이 안되는것 입니다.
한글로 제대로 표현을 할려면 위 예제에서 charset=iso-8859-1 을 charset=euc-kr로 변경해주시면 한글이 올바르게 나오는것을 확인할 수 있습니다.
다음 포스팅은 import에 대해서 알아보도록 하겠습니다.
'IT 프로그래밍 > JSP' 카테고리의 다른 글
JSP import 속성에 대한 설명 (0) | 2014.02.01 |
---|---|
JSP page 디렉티브 정의 및 설명 (0) | 2014.02.01 |
JSP 디렉티브(Directive)의 정의 및 종류 (0) | 2014.02.01 |
JSP 자바스크립트 오늘 날짜 요일 시간 알아내기 (0) | 2014.01.26 |
JSP 자바스크립트에서 for 문 기초 설명 (0) | 2014.01.26 |