2014년 8월 13일 수요일

[심심풀이]MessageResource 사용하기[자바개발자교육/자바교육/자바강좌/자바,Spring교육잘하는곳/자바,spring교육추천/자바실무교육/JAVA/JAVA교육/JAVA스프링학원/JAVA실무교육]

MessageResource 사용하기 

웹 애플리케이션을 다중 언어가 지원 되도록 만들려고 일일이 매 페이지를 다르게 만든다고 하는 일은 대단히 수고스러운 일 입니다. 

자바에서는 java.util.ResourceBundle 클래스를 통해 국제화를 지원하고 있으며 스트럿츠에서는 국제화를 지원하기 위해 org.apache.struts.util.MessageResource를 제공 합니다. 

이러한 리소스 번들은 국제화 뿐 아니라 지역화된 프로그램에서도 유지 보수 시간을 줄여 주는 이점이 있습니다. 예를 들어 웹사이트 전체에 사용되는 텍스트나 라벨인 경우 변경이 필요 한 경우 단지 리소스 번들 프로퍼티 파일만 수정 함으로서 간단히 해결 할 수 있습니다. 

스트럿츠 1.1 이상에서는 여러 개의 리소스 번들 파일을 지원 합니다. 

아래에는 메시지들을 등록 해 놓은 리소스 번들 properties 파일 입니다. 
(application.properties) 


login.title = LogIn 
login.login = Login 
login.reset = Cancel 

prompt.id= User ID : 
prompt.password=Password : 

main.title=Main 


############################################### 
error.id.required=<li>ID REQUIRED.</li> 
error.pwd.required=<li>PASSWORD REQUIRED</li> 
error.login.invalid=<li>ID/PASSWORD NOT CORRECT</li> 

errors.header=<h3><font color="red">ERROR!</font></h3> 
                  You must correct the following error(s) before proceeding:<UL> 
errors.footer=</ul><hr> 


아래는 이러한 메시지를 KEY값을 이용하여 VIEW에서 불러 오는 예젭니다. 

(login.jsp) 

<%@ page pageEncoding="euc-kr" %> 
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> 
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %> 
<html> 
<head> 
    <title><bean:message key="login.title" /></title> 
    <html:base/> 
</head> 

<body> 
<!-- 웹서버가 보내는 응답에 오류가 있다면 출력 --> 
<html:errors/> 

<!-- LoginSummit에 대해서는 struts-config.xml에 Mapping을 하게 된다 --> 
<!-- focus="id" 라는 문법에 의해 자동으로  자바스크립트를 생성 합니다. --> 
<html:form action="/LoginSubmit" focus="id"> 
        <table> 
                <!-- 아래에서 텍스트 출력은 application.properties에서 가져 옵니다... --> 
                <tr>                        
                        <th align="right"><bean:message key="prompt.id"/></th>                        
                        <!-- 아래는 input type=text 와 동일한 기능을 합니다 --> 
                        <td><html:text property="id" value=""/></td> 
                </tr> 
                <tr> 
                        <th align="right"><bean:message key="prompt.password"/></th> 
                        
                        <!-- 만약 로그인을 실패하여 다시 돌아오는 경우 pwd 항목의 값을 비울때는 아래처럼 
                        redisplay="false" 라고 하면 됩니다. HTML의 password 항목과 유사함  --> 
                        <td><html:password property="pwd" redisplay="false"/></td> 
                </tr> 
                <tr> 
                        <!-- Submit 버튼과 Reset 버튼을 생성 --> 
                        <!-- 버튼의 라벨은 application.properties에서 내용을 가져 옵니다 --> 
                        <th></th> 
                        <td> 
                            <html:submit> 
                                <bean:message key="login.login" /> 
                                  </html:submit> 
                        
                            <html:reset> 
                                <bean:message key="login.reset" /> 
                                  </html:reset> 
                        </td> 
                </tr>                                
        </table> 
</html:form> 
</body> 
</html> 


다음은 리소스 파일을 사용하기 위해 struts-config.xml에 설정 한 예 입니다. 

<!-- 아래는 스트러츠 Application에서 사용할 Message Resource들을 설정  --> 
<!-- 확장자가 properties인 application.properties를 만들어 넣으면 된다  --> 
    <message-resources parameter="resources.application"/> 



평일주간[100%환급과정]
(8/18)Spring,MyBatis,Hibernate실무과정
(8/18)자바기초JDBC,Servlet/JSP까지
(8/18)PL/SQL,ORACLE HINT,TUNING
(8/25)C#4.0,WinForm,ADO.NET
(8/25)안드로이드개발자과정
(8/25)SQL기초에서 Schema Object까지
(8/25)오라클자바채용확정교육
평일야간[개인80%환급]
(8/21)Spring, MyBatis, Hibernate
(8/21)HTML5,CSS3,Ajax,jQuery마스터
(8/21)C#,Network,ADO.NET,ASP.NET
(8/26)SQL기초에서실무까지
(8/26)안드로이드개발자과정
(8/28)자바JSP,jQuery,Spring,MyBatis
주말주간[개인80%환급]
(8/16)C#,ASP.NET마스터(8/16)웹퍼블리싱 마스터
(8/16)Spring, MyBatis, Hibernate
(8/16)자바웹&스프링,마이바티스
(8/23)SQL기초에서실무까지
(8/23)자바,네트워크,웹&스프링
(8/30)안드로이드개발자과정
주말야간[개인80%환급]
(8/23)SQL기초에서실무까지
(8/23)자바,네트워크,웹&스프링

댓글 없음:

댓글 쓰기