我从 UI 传递语言代码和国家代码来创建Locale
对象。如何在其中设置此 Locale 对象HttpServletRequest
,以便在 Web 应用程序中的任何位置我都可以使用此 Locale 对象HttpServletRequest.getLocale()
?
问问题
2624 次
2 回答
4
返回的值HttpServletRequest.getLocale()
由 Servlet 容器自动设置。来自 Javadocs:
根据 Accept-Language 标头返回客户端将接受内容的首选语言环境。如果客户端请求未提供 Accept-Language 标头,则此方法返回服务器的默认语言环境。
如果你有一个网络应用程序,你最好不要在你的应用程序中询问国家代码等,而是依靠浏览器的偏好/设置(即由每个用户在浏览器本身中设置,并适用于他访问的所有网页)。正是这个值通过上述机制进行通信并由您的HttpServletRequest.getLocale()
.
于 2015-01-13T10:35:10.233 回答
0
假设这是一个允许用户选择应用程序语言的功能:
请求是一个非常短暂的对象。如果您想设置一次,然后让该值在多个请求中保持不变,那么会话是一个更好的地方。如果您正在处理无状态应用程序,那么客户端将必须将其与每个请求一起传递。
于 2015-01-13T12:03:27.253 回答