随笔-5  评论-22  文章-35  trackbacks-0

1:在MyEclipse下面创建一个test的Web  Project,然后添加Spring相关的文件,在src根目录下创建applicationContext.xml文件。

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "
http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
 
       <bean id="messageSource"  class="org.springframework.context.support.ResourceBundleMessageSource">
 
      <property name="basename" value="messages"/>

      </bean>
 
       <bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver"/>
   
</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

<%@ page language="java"  pageEncoding="UTF-8"%>
<%@ taglib prefix="spring" uri="WEB-INF/lib/spring.tld"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>Spring国际化</title>
  </head>
  <body>
 
    <spring:message code="main.title" /><br>

    <input type="button" value="<spring:message code="main.title" />"/><br>

  </body>

</html>

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

在web.xml加入
<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>
   classpath*:/applicationContext*,classpath*:META-INF/applicationContext*.xml
  </param-value>
 </context-param>
 <listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
 </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问题.







posted on 2006-12-30 11:22 fish的Blog 阅读(5315) 评论(2)  编辑  收藏 所属分类: spring

评论:
# re: Spring的国际化(原创) 2009-04-20 10:46 | 萦怀
我想 直接在页面中 放几个按钮,就是几个国家的语言,点击它 就可以改变,这个怎么搞,是不是 要把 Cookies 的只改了,还是 怎么办?  回复  更多评论
  
# re: Spring的国际化(原创) 2009-04-20 10:48 | 萦怀
我的QQ:511689071(看到了加我一下啊),我可以 向你 请教一下啊,我现在也在搞这个国际化,是个新手,希望可以 讨教学习啊,谢谢!  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: