AngelPlayer`s Diary

JSP에 JSTL fmt의 태크를 이용하면 다국어를 지원 가능

 

 

지역화 - 사용 국가별 환경에서 특정 언어와 지역에 맞게 적합화 하는 것 (L10n)

- 숫자, 날짜, 시간의 형식

- 화페의 표시

- 키보드 지원

- 문자열 순서와 정렬

- 심볼, 아이콘, 색상

- 문화에 따라 문자 혹은 그림 변경(종교 문화에 따라)

- 지역별 법률 차

 

 

국제화 - 여러 국가에서 사용할 수 있도록 다국어를 지원하는 것 (i18n)

- 유니코드의 사용이나 기존 인코딩을 적절히 처리

- 사용자 인터페이스에 표시할 문자열에는 문자 코드가 들어가지 않도록 유의

- 국제화 처리하는 정보에 언어 정보를 포함하거나, 세로/가로/우측 쓰기 등 언어의 특성을 반영하는 처리 지원

- 날싸 및 시간, 달력, 숫자, 주소 등, 언어의  특성에 대한 사용자 설정을 지원해야 함

- 국제화는 사용자의 요청이나 설정에 따라 필요시 사용되도록 지역화 정보를 코드와 분리해야 함

 

 

 

Locale 클래스를 이용한 다국어 처리 - 사용자가 어떤 언어로 출력할 것인지를 결정하는 수단

메세지, 숫자, 날짜, 시간 등을 표현하는데 사용

 

<% page import="java.util.Locale" %>

<%
	Locale locale = request.getLocale();
%>

 

 

 

JSTL fmt 태그 - 다국어 문서 처리를 위한 태그

jstl 라이브러리를 필요로함

리소스 번들(.properties 파일)과 함께 사용함

 

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
	
    // 언어 지정 : 보통은 아래를 통해서 사용
    <fmt:setLocale value="en"/>
    <fmt:setLocale value="<%= request.getParameter("language") %>"/>
    
    
    
    // setBundle은 id를 지원하지 않기 때문에 var를 사용
    <fmt:setBundle basename="번들 위치(src 아래 위치)" var="번들명"/>

    <fmt:message key="키(변수)명" bundle="${번들명}" />
    
    
    // or
    // set 대신 bundle 형태로 감싸서 사용 -> 사용 시 번들을 지정할 필요가 없음
    <fmt:bundle basename="번들 위치(src 아래 위치)>
    	<fmt:message key="키(변수)명">
    </fmt:bundle>

 

 

공유하기

facebook twitter kakaoTalk kakaostory naver band