[ 2010.5.16 ] Spring_message Project
종종 홈페이지에서 접속되는 클라이언트의 언어별로 페이지의 출력값을 다르게 설정할 필요가 있을 때가 있다. 이를 위한 설정을 Spring에서 해보자.
아래와 같이 패키지를 생성한 후, "Greeting_en.properties" File을 추가한다.
Greeting_en.properties |
greeting=hello message=this is english message! |
이번에는 greeting_ko.properties 파일의 내용을 아래와 같이 입력하여 생성하여 보자.
greeting_ko.properties 라는 파일에 아래와 같이 Unicode 타입으로 내용물이 저장됨. |
greeting=\uc548\ub155\ud558\uc138\uc694 message=\uc774\uac83\uc740 \ud55c\uae00 \uba54\uc138\uc9c0\uc785\ub2c8\ub2e4. |
위의 유니코드(Unicode)부분의 내용은
a.properties |
greeting=안녕하세요 message=이것은 한글 메세지입니다. |
와 같다.
이렇듯 한글 Text를 Unicode로 변경하기 위해서는 우선 한글로 위의 내용을 입력한 후, "a.properties"라는 이름으로 특정 폴더에 저장한다.( 여기서는 C:\에 저장)
그리고 이제 CMD 를 열어 아래와 같이 ascii 코드로 변환 명령을 실행하면 "greeting_ko.properties"라는 이름으로 새롭게 파일이 생성되는 것을 확인할 수 있다.
C:\>native2ascii a.properties greeting_ko.properties
생성된 파일을 greeting_en.properties와 동일한 패키지로 복사한다.
GreetingBean.java
package di.message;
import java.util.Locale;
import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.context.support.ResourceBundleMessageSource; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource;
package di.message;
import java.util.Locale;
import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.context.support.ResourceBundleMessageSource; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource;
public class GreetingBean { //생성한 properties 파일들을 쉽게 처리하기 위한 녀석. //org.springframework.context.support.ResourceBundleMessageSource ResourceBundleMessageSource rm;
public void setRm(ResourceBundleMessageSource rm){ this.rm=rm; } public void printMessage(){ //java.util.Locale : 지역/언어 코드 정보를 가지고 있는 객체. Locale koLocale=Locale.getDefault(); Locale enLocale=Locale.ENGLISH;
String greeting=rm.getMessage("greeting", null, enLocale); String message=rm.getMessage("message", null, koLocale); System.out.println("greeting : " + greeting); System.out.println("message : "+ message);
} public static void main(String[] args) { Resource resource=new ClassPathResource("messageContext.xml"); BeanFactory factory=new XmlBeanFactory(resource); GreetingBean gb=(GreetingBean)factory.getBean("greetingBean");
gb.printMessage(); } } |
messageContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean name="rm" class="org.springframework.context.support.ResourceBundleMessageSource"> <!-- property File을 등록한다. --> <property name="basename" value="message.greeting"></property> </bean>
<bean name="greetingBean" class="di.message.GreetingBean"> <property name="rm" ref="rm"/> </bean>
</beans> |
결과값 :
greeting : hello message : 이것은 한글 메세지입니다. |
'Java' 카테고리의 다른 글
Spring 중간 점검 실습 (0) | 2010.06.15 |
---|---|
Spring 초간단 실습 (0) | 2010.06.15 |
Struts 1 설치 및 간단한 실습 (0) | 2010.06.14 |
Filter (0) | 2010.06.13 |
File Upload API (0) | 2010.06.13 |
Spring에서 자주 사용되어지는 API 묶음 (0) | 2010.06.13 |
간단한 Spring Project 실습하기 (0) | 2010.06.13 |
Spring 설치 및 이클립스와의 연동 (1) | 2010.06.13 |
Tomcat 설치 및 간단한 환경설정 (0) | 2010.04.22 |
0401 Report Source (0) | 2010.04.01 |