【问题标题】:Spring i18n question mark instead of textSpring i18n 问号而不是文本
【发布时间】:2018-04-24 02:24:42
【问题描述】:

我有 i18n,但遇到中文和印地文字母问题。我有问号??????而不是文字。

这是我的 dispatcher-servlet.xml:

    <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">

    <property name="basename" value="classpath:messages" /> 
    <property name="defaultEncoding" value="UTF-8" />               
    <property name="useCodeAsDefaultMessage" value="true" />
</bean>  

<bean id="localeResolver"
    class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
    <property name="defaultLocale" value="en" />

</bean> 

<mvc:interceptors>

    <mvc:interceptor>
         <mvc:mapping path="/**" />     

    <bean class="com.aartek.interceptor.LoginInterceptor" />                
    </mvc:interceptor>

    <mvc:interceptor>
         <mvc:mapping path="/**" /> 

    <bean class="com.aartek.interceptor.SecondInterceptor" />           
    </mvc:interceptor>

    <mvc:interceptor>
         <mvc:mapping path="/product.do*" />    

    <bean class="com.aartek.interceptor.LoggingInterceptor" />          
    </mvc:interceptor>

    <bean id="localeChangeInterceptor"
        class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
        <property name="paramName" value="lang" />
    </bean>

</mvc:interceptors>

登录.jsp

   <%@page  contentType="text/html;charset=utf-8" pageEncoding="UTF-8" 
   language="java"  %>

   <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
   "http://www.w3.org/TR/html4/loose.dtd">
   <%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
   <%@taglib uri="http://www.springframework.org/tags" prefix="spring"%>

   <html>

     <head>

  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <title>Login</title>

    <span style="float: right">

   <a href="?lang=en">English</a> |<a href="?lang=fr">French</a>|<a href="? 
              lang=hi_IN">Hindi</a>|<a href="?lang=zh_CN">Chinese</a>

    </span>

     <form:form method="POST" modelAttribute="keyUser" 
         action="checkLogin.do">
     <table width="100%" border="0">
            <tr>
                <td><spring:message code="label.userId"  
                         /></td>

                <td><form:input path="userId" id="userId" /></td>


            </tr>

以类似的方式,我写了电子邮件 ID、密码和提交。

3.messages_zh_CN.properties

   label.userId=\u7528\u6237\u540D
   label.emailId=\u7535\u5B50\u90AE\u4EF6ID
   label.password=\u5BC6\u7801
   label.submit=\u63D0\u4EA4

我以类似的方式为英语、印地语和法语写作。

我的问题: 如何删除问号及其仅用于中文和印地语,如何显示正确的文本?

【问题讨论】:

  • properites 文件的文件编码是什么?

标签: spring internationalization


【解决方案1】:

properites 文件、java 类、jsp 的文件编码应为 UTF-8。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-21
    • 2021-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多