關於部落格
換個方向思考反而能更真切的看出事物的真實與本質
  • 65509

    累積人氣

  • 2

    今日人氣

    0

    訂閱人氣

[Spring][i18n] Spring i18n 國際化配置


1.配置Resource
這裡是指定用 message (即是指會讀取放在Classpath下的 message.properties 或 message_zh_TW.properties等)
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource" p:basename="message" />

2.配置Interceptor
這裡是用lang為參數 (即為之後要用 ?lang=zh_TW 來改變語系設定)
<bean id="localeChangeInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" p:paramName="lang" />

3.配置Resolver
這裡是用 Session 的設定,亦有 CookieLocaleResolver 或是 AcceptHeaderLocaleResolver 的設定
<bean id="localeResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver" />

4.設置Interceptor
基本上就是對應到第2點配置的Interceptor,至於要用什麼Handler視你的情況而定,例如有:  ControllerClassNameHandlerMapping 或是如官網範例的 SimpleUrlHandlerMapping 等。
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
    <property name="interceptors" ref="localeChangeInterceptor"/>
</bean>

設完之後在Classpath下要有 message.properties (或多加 message_zh_TW.properties, message_zh_CN.properties 才比較好測多語系的切換)

然後在View的JSP程式裡用 <spring:message code="code_name"/> 即可看到結果,當然的在JSP的上頭也要有 <%@taglib prefix="spring" uri="http://www.springframework.org/tags"%> 才會有作用喔!!
相簿設定
標籤設定
相簿狀態