`

spring 国际化支持 付native2ascii编码

阅读更多
Spring的国际化(原创)
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问题.

如果用中文保存的时候可能会有问题 所以可以把中文编码为utf-8码 这样就可以直接在页面调用 编码方法如下:

中文需用java自带一个native2ascii来编成UTF-8格式的不然会有乱码:
native2ascii   -encoding   GBK   源文件   目标文件   (eg:native2ascii   -encoding   GBK   messages.properties   messages_zh_CN.properties)
分享到:
评论

相关推荐

    properties 中文问题

    这些文件通常以ASCII编码格式编写,但有时需要处理包含中文字符的情况,这就会引发"properties中文问题"。标题提到的问题可能涉及到如何正确地在properties文件中使用中文字符,以及在读取或写入这些文件时遇到的...

    struts+hibernate+spring 登录开发实例

    由于在Tomcat发布后可能出现乱码问题,作者创建了一个批处理文件`properties2GBK.bat`,可能用到了`native2ascii`工具来将非ASCII字符转换为适合Java的字节表示,以解决中文乱码问题。 总结来说,这个开发实例展示...

    Struts+Spring+Hibernate练习

    此外,对于中文资源文件,需使用native2ascii工具将其转换为Unicode编码,以便在Java环境中正确显示。 5. **集成Spring**:虽然案例中未具体提及Spring的集成,但在实际开发中,通常会通过在Web应用的上下文文件...

    struts+spring+hibernate实例

    - 使用`native2ascii`工具将中文资源文件转换为GBK编码,以避免乱码问题。 - 设置Eclipse的编码格式为GBK,确保编辑过程中不出现乱码。 #### 总结 通过以上步骤,我们不仅实现了Struts、Spring 和 Hibernate 的...

    message_i18

    传统的做法是使用JDK自带的`native2ascii.exe`工具,将本地化的文本转换为Unicode编码,以便Java程序可以识别。这个插件使得开发者可以直接在IDE内编辑这些文本,减少了手动操作和外部依赖,提高了效率。 标签"国际...

    StrutsSpringHibernate实例

    为了防止中文乱码问题,可以使用`native2ascii`工具将文件转换为GBK编码。 ```bash native2ascii -encoding gbk ApplicationResources_zh_CN.properties temp.properties del ApplicationResources_zh_...

    JAVA-SSH面试题.doc

    例如,使用`native2ascii`工具处理中文资源文件,转换编码格式。 通过以上步骤,Struts应用可以根据用户的语言偏好,动态加载相应的资源文件,实现界面的多语言支持。 综上所述,理解MVC模式、掌握Struts与...

    企业面试题总结(SSH框架技术运用).pdf

    4. **编码转换**:如果资源文件中包含非ASCII字符,如中文,可能需要使用工具(如native2ascii)进行编码转换。 5. **在视图中引用**:在JSP页面中使用Struts标签引用资源文件中的键,例如`${label.welcome}`,...

    java面试题

    3. **编码转换**:对于非ASCII字符集(如中文),可能需要进行编码转换,例如使用命令`native2ascii -encoding gb2312 ApplicationResource_temp.properties ApplicationResource_zh_CN.properties`来生成正确的资源...

    J2EE面试资源收集

    - 使用`native2ascii`命令转换中文资源文件编码,以解决字符编码问题。 - 在JSP页面中使用Struts标签来动态加载资源文件中的值。 通过上述步骤,我们可以实现Struts应用的国际化支持,使得应用能够适应不同国家和...

    SSH开发搭建

    对于中文资源文件可能出现的乱码问题,可以通过使用`native2ascii`工具转换编码,或在Eclipse中调整properties文件的编码设置。 10. **运行与测试**: 最后,当所有配置完成后,部署应用到Tomcat服务器,用户可以...

    2012SSh面试宝典

    - 如使用`native2ascii`命令行工具进行转换。 **5. JSP页面配置** - 在JSP页面中添加Struts的bean标记库,以便能够使用Struts提供的标签进行国际化文本的获取。 通过以上步骤,可以有效地实现Struts框架下的多...

    京东-Java中级面试题 垃圾回收、字符编码、反射等基础题

    - **Spring AOP**:动态代理机制支持面向切面编程。 #### 四、Java异常体系 **4.1 异常体系结构** Java中的异常体系由`Throwable`类及其子类构成,其中`Throwable`有两个直接子类:`Error`和`Exception`。 1. **...

    手把手练习SSH实例

    对于中文乱码问题,可以使用`native2ascii`工具将资源文件转换为GBK编码。创建一个批处理文件,执行这个转换过程,确保在IDE中设置正确的编码格式。 完成上述步骤后,SSH框架的基本结构就搭建好了。接下来,我们...

    如何解决springboot读取配置文件的中文乱码问题

    - 另外,确保新建的文件默认编码也是UTF-8,可以勾选`Transparent native-to-ascii conversion`,这样新创建的`.properties`文件会自动转换为ASCII格式,但仍保持可读性。 2. **配置文件编码声明**: - 在`...

    互联网大厂最新JAVA实习岗面试题

    ISO-8859-1扩展了ASCII,支持更多西欧语言。GB2312和GBK是中国大陆常用的汉字编码,分别包含6763和21003个汉字。UTF-16和UTF-8都是Unicode的实现,UTF-16用固定2字节表示字符,而UTF-8则采用变长编码,节省存储空间...

    21天学通JAVA高清版(护眼绿豆沙底色版)

    - native2ascii:用于编码转换,将Unicode编码的中文转换为ASCII编码,或反之。 - javap:反编译class文件,查看Java字节码。 - jdb:Java调试器,用于调试Java程序。 - jps:列出当前运行的Java进程。 - ...

    java开源包2

    开发它是用于在UTF-8 Oracle实例中使用ASCII编码的Oracle 数据库中来正确的传输非ASCII字符。 Java模板语言 Beetl Beetl,是Bee Template Language的缩写,它绝不是简单的另外一种模板引擎,而是新一代的模板引擎,...

Global site tag (gtag.js) - Google Analytics