property - EgovPropertyServiceImpl 사용시 한글 문제
- 작성자 :
- 이*희
- 작성일 :
- 2009-10-20 18:29:58
- 조회수 :
- 4,188
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
안녕하세요.
전자정부 F/W 사용시 EgovPropertyServiceImpl 를 사용하려고 합니다.
문제는 한글의 경우 ascii가 그대로 보여 집니다.
propertyEditor는 깔려 있습니다.
<< bean 설정 >>
- map과 value 두가지 모두 사용해 보았습니다.
<bean name="propertyMain" class="egovframework.rte.fdl.property.impl.EgovPropertyServiceImpl"
destroy-method="destroy">
<property name="properties">
<map>
<entry key="temp.garbage2" value="1234garbage"/>
</map>
</property>
<property name="extFileName">
<set>
<!--<map>
<entry key="encoding" value="UTF-8"/>
<entry key="filename" value="classpath*:lotte/a1/properties/main.properties"/>
</map>
--><value>classpath*:lotte/a1/properties/main.properties</value>
</set>
</property>
</bean>
<< eclipse에서 보여지는 main.properties >>
temp.garbage = this is 한글 입니당.
<< 실제 main.properties >>
temp.garbage = this is \ud55c\uae00 \uc785\ub2c8\ub2f9.
<< 소스 코드 >>
logger.debug("[temp.garbage]"
+ propertyMain.getString("temp.garbage"));
여기서 로그를 찍으면 한글이 나와야 정상인데
[GUN]2009-10-20 17:57:36,281 DEBUG [lotte.a1.egovSample.sample.controller.EgovSampleController]
[temp.garbage]this is \ud55c\uae00 \uc785\ub2c8\ub2f9.
이렇게 나옵니다. ascii 자체로
확인 및 지원 요청드립니다.
Properties pr = new Properties();
pr.load(new FileInputStream("C:\\Dev_LHA\\workspace\\A1Source\\EarContent\\APP-INF\\classes\\lotte\\a1\\properties\\main.properties"));
logger.debug("[pr]" + pr.getProperty("temp.garbage"));
아래와 같이 그냥 코딩하여 찍어보면 한글이 제대로 나옵니다.
[GUN]2009-10-20 18:29:19,140 DEBUG [lotte.a1.egovSample.sample.controller.EgovSampleController]
[pr]this is 한글 입니당.
전자정부 F/W 사용시 EgovPropertyServiceImpl 를 사용하려고 합니다.
문제는 한글의 경우 ascii가 그대로 보여 집니다.
propertyEditor는 깔려 있습니다.
<< bean 설정 >>
- map과 value 두가지 모두 사용해 보았습니다.
<bean name="propertyMain" class="egovframework.rte.fdl.property.impl.EgovPropertyServiceImpl"
destroy-method="destroy">
<property name="properties">
<map>
<entry key="temp.garbage2" value="1234garbage"/>
</map>
</property>
<property name="extFileName">
<set>
<!--<map>
<entry key="encoding" value="UTF-8"/>
<entry key="filename" value="classpath*:lotte/a1/properties/main.properties"/>
</map>
--><value>classpath*:lotte/a1/properties/main.properties</value>
</set>
</property>
</bean>
<< eclipse에서 보여지는 main.properties >>
temp.garbage = this is 한글 입니당.
<< 실제 main.properties >>
temp.garbage = this is \ud55c\uae00 \uc785\ub2c8\ub2f9.
<< 소스 코드 >>
logger.debug("[temp.garbage]"
+ propertyMain.getString("temp.garbage"));
여기서 로그를 찍으면 한글이 나와야 정상인데
[GUN]2009-10-20 17:57:36,281 DEBUG [lotte.a1.egovSample.sample.controller.EgovSampleController]
[temp.garbage]this is \ud55c\uae00 \uc785\ub2c8\ub2f9.
이렇게 나옵니다. ascii 자체로
확인 및 지원 요청드립니다.
Properties pr = new Properties();
pr.load(new FileInputStream("C:\\Dev_LHA\\workspace\\A1Source\\EarContent\\APP-INF\\classes\\lotte\\a1\\properties\\main.properties"));
logger.debug("[pr]" + pr.getProperty("temp.garbage"));
아래와 같이 그냥 코딩하여 찍어보면 한글이 제대로 나옵니다.
[GUN]2009-10-20 18:29:19,140 DEBUG [lotte.a1.egovSample.sample.controller.EgovSampleController]
[pr]this is 한글 입니당.
A
안녕하세요.. 이건희님..
우선 encoding 지정 부분을 제외시켜 보시기 바랍니다. (또는 euc-kr)
propertyEditor의 경우는 jdk에서 제공하는 native2ascii를 통해 iso-8859 encoding으로 저장되는 형식으로 사용할 수 있도록 제공되는 기능이고,
저희 EgovPropertyService는 특정 인코딩으로 저장되어 있는 properties 파일을 처리할 수 있도록 기능을 제공합니다.
즉, 위의 경우는 iso-8859형태로 저정되어 있는 파일(한글은 \uXXXX와 같은 유니코드 형식) 그냥 utf-8로 해석해서 처리 되기 때문에 유니코드가 그대로 나타나는 것입니다.
이건희님과 같은 경우는 properties 파일을 propertyEditor 사용없이 그냥 utf-8, euc-kr 형식으로 저장하고 위 EgovPropertyService를 활용하셔도 될 것 같습니다.
그럼.. 남은 하루도 즐거운 하루되십시오.
감사합니다.
우선 encoding 지정 부분을 제외시켜 보시기 바랍니다. (또는 euc-kr)
propertyEditor의 경우는 jdk에서 제공하는 native2ascii를 통해 iso-8859 encoding으로 저장되는 형식으로 사용할 수 있도록 제공되는 기능이고,
저희 EgovPropertyService는 특정 인코딩으로 저장되어 있는 properties 파일을 처리할 수 있도록 기능을 제공합니다.
즉, 위의 경우는 iso-8859형태로 저정되어 있는 파일(한글은 \uXXXX와 같은 유니코드 형식) 그냥 utf-8로 해석해서 처리 되기 때문에 유니코드가 그대로 나타나는 것입니다.
이건희님과 같은 경우는 properties 파일을 propertyEditor 사용없이 그냥 utf-8, euc-kr 형식으로 저장하고 위 EgovPropertyService를 활용하셔도 될 것 같습니다.
그럼.. 남은 하루도 즐거운 하루되십시오.
감사합니다.