Spring的一些注意点

1、国际化时,中文properties文件需要进行如下处理,避免存在乱码问题。

 

eg:native2ascii   -encoding   GBK   messages.properties   messages_zh_CN.properties

 
2、国际化时,通过如下方式获取可以更大的提高工具类的易用性。

 

 <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">  
    <property name="basenames" >
      <list>
       <value>i18n/messages</value>
       <value>i18n/messages1</value>
      </list>
    </property>  
  </bean>  
  <bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver"/>

定义工具类ResourceUtils.java,如下:

public static String getMessage(String baseName,String messageName){

        ResourceBundleMessageSource s = new ResourceBundleMessageSource();

        s.setBasename("i18n/"+baseName);

        String str = s.getMessage(messageName, null, locale);//locale定义在用户会话中

        return str;

}

 

如果表现层是velocity的话,可以如下调用:

${ResourceUtils.getMessage("messages","main.title")}

其中的ResourceUtils建议在统一的Controller基类中设定到View中,方便用户调用。

 

你可能感兴趣的:(spring,Web,bean,servlet,velocity)