Spring的國際化(轉載)

1:在MyEclipse下面建立一個test的Web  Project,而後添加Spring相關的文件,在src根目錄下建立applicationContext.xml文件。 

applicationContext.xml 

Xml代碼   收藏代碼
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">  
  3.   
  4. <beans>  
  5.    
  6.        <bean id="messageSource"  class="org.springframework.context.support.ResourceBundleMessageSource">  
  7.    
  8.       <property name="basename" value="messages"/>  
  9.   
  10.       </bean>  
  11.    
  12.        <bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver"/>  
  13.      
  14. </beans>   


2:在src根目錄下面建立4個資源文件:分別是 

引用
messages_zh.properties 
main.title=你好 

messages_en.properties 
main.title=Hello World! 

messages_ja.properties 
main.title=こんにちは 

messages_ko.properties 
main.title=안녕하십니까


3:在WebRoot根目錄下面建立test.jsp 

test.jsp 

Html代碼   收藏代碼
  1. <%@ page language="java"  pageEncoding="UTF-8"%>  
  2. <%@ taglib prefix="spring" uri="WEB-INF/lib/spring.tld"%>  
  3. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  4. <html>  
  5.   <head>  
  6.     <title>Spring國際化</title>  
  7.   </head>  
  8.   <body>  
  9.    
  10.     <spring:message code="main.title" /><br>  
  11.   
  12.     <input type="button" value="<spring:message code="main.title" />"/><br>  
  13.   
  14.   </body>   
  15.   
  16. </html>  



4:修改WEB-INF下面的web.xml 

在web.xml加入 
Xml代碼   收藏代碼
  1. <context-param>  
  2.   <param-name>contextConfigLocation</param-name>  
  3.   <param-value>  
  4.    classpath*:/applicationContext*,classpath*:META-INF/applicationContext*.xml  
  5.   </param-value>  
  6.  </context-param>  
  7.  <listener>  
  8.   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>  
  9.  </listener>  


這樣用Spring國際化的Test.jsp頁面就作好了:),此種方法是自動默認當前用戶的語言,好比客戶端是日語系統,就自動尋找messages_ja.properties資源文件,是英語系統,就自動尋找messages_en.properties資源文件。 


注意事項:  
1:用hibernate3.0,鏈接Mysql5.0數據庫。 

若是用hibernate.properties配置文件 
hibernate.connection.url jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8 

若是用hibernate.cfg.xml配置文件 
jdbc:mysql://localhost:3306/test?useUnicode=true&amp;useUnicode=true&amp;characterEncoding=utf-8&amp;mysqlEncoding=utf8 


2:頁面的編碼方式,應該選用utf-8 
<%@ page language="java"  pageEncoding="UTF-8"%> 


3:建立的數據庫的編碼方式也應該選用utf-8,以及表,字段的編碼方式都應選用utf-8 

注意以上3點就能夠解決國際化時,所出現的頁面顯示亂碼問題,以及插入韓語時,出現的data too long for column問題. 
相關文章
相關標籤/搜索