2014-06-10 49 views
0

我是Spring的新手,目前對本地化感到困惑。 我正在使用以下代碼從messages_jp.properties文件中獲取文本。Spring框架 - 如何更改控制器的區域設置

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

現在我想切換到從messages_en.properties文件中的文本,有沒有改變區域在控制器內,如果... ...還有塊,不使用網址參數就像任何方式「?郎= en「,類似於:

if (user.getLang() == 1) { 
    // set locale to en 
} else { 
    // set locale to jp 
} 

在此先感謝!

+0

,如果你想測試語言集成,您可以更改語言在瀏覽器中刷新頁面(區域是從設定瀏覽器),或者你可以在控制器中使用'Locale.setDefault(preferredLocale)'。恕我直言,改變瀏覽器設置是最好的解決方案。 –

+0

查看春季網站的'LocaleResolver' [這裏](http://docs.spring.io/spring/docs/2.0.x/api/org/springframework/web/servlet/LocaleResolver.html) –

+0

感謝您的回覆。我想根據用戶在數據庫中的信息來改變語言,所以在瀏覽器中改變語言不是重點。使用Locale.setDefault()也不起作用:( – Bayoneda

回答

1

試試這個

<util:properties id="yourFileNameId" location="classpath:/yourFileName.properties"/> 

在控制器

@Value("#{yourFileNameId['message_id']?:1}") 
private int smalltext; 
+0

感謝您的回覆,但我不明白這一點,它如何幫助我更改顯示語言? – Bayoneda

相關問題