0

Thread.CurrentThread.CurrentCultureJavaでC#に代わるものはありますか? そうでない場合、Java でユーザーが選択したロケールを保存するのに最適な場所はどこですか?

4

2 に答える 2

2

Locale.setDefault()は、JVM 全体のデフォルト ロケールを設定します。これは、クライアント アプリケーションには適しています。Web アプリケーションの場合、これは有効なソリューションではありませんが、すべてのユーザーに同じスレッドが使用されるため、スレッドローカルも有効ではありません。この場合、ユーザー ロケールは通常、HTTP セッションに格納されます。

于 2012-05-21T17:20:55.243 に答える
1

Web SpringMVC ベースの Web アプリケーションがある場合は、このクラスorg.springframework.context.i18n.LocaleContextHolder( javadoc here ) があり、現在のロケールにアクセスできます。

Web アプリケーションでは、accept-languageこれDispatcherServlet.

于 2012-05-21T17:30:04.990 に答える