今天和经理争执了半天,主要就是关于locale的存放问题。项目使用的是Spring框架,要求多语言。页面好说,用Spring的标签库就可以了,还有一些其它的,主要是我们自己生成的Html代码等,这个时候,就需要自己翻译了。
翻译呢,就需要Locale信息,取Locale信息就有多种方法了,我使用了Spring的Cookie,这样取Locale的时候,就不用使用Request.getLocale()方法了,因为getLocale取得是用户的本机Locale而不是用户请求的Locale,页面上有个链接选择中文版还是英文版的。这样我就需要把locale往后面传播。我在共同得Controller里面提供了一个方法用来获得Locale。
在测试得时候,发现一个问题,就是有人没有通过我提供得方法获得Locale,直接调用得Request.getLocale方法,这样导致了翻译不正常。解决得方法,我和经理发生了分歧,我觉得所有得人必须从我提供的方法获得Locale,经理让我把Request得Locale给替换掉。这样就不会出现问题。我不同意,我宁愿新作一个自定义的Locale类,这样大家调用翻译得时候就不会传入Request.getLocale了。总觉得经理让我替换掉Request里面locale的做法,是一种隐讳的处理方式,虽然解决了问题,但是容易使后来的人产生迷惑。如果后面的人需要用到客户机Locale的时候,调用Request.getLocale的时候,就会遇到问题。
经理觉得改变Request里面的Locale可以保证程序正确执行,而且这样做起来也比较好。
个人觉得这样总是改变了Request.getLocale得API得含义,这样自己有些接收不了。经理就让我写这篇blog看看大家得意见,我也想听听大家得意见,因为经理说服不了我。看看自己到底是固执,还是认识有些狭隘。希望大家不要惜言。
分享到:
相关推荐
在Linux操作系统中,`locale-archive`和`locale-archive.tmpl`是两个非常关键的文件,它们与系统的国际化(Internationalization,简称i18n)和本地化(Localization,简称l10n)设置密切相关。`locale`是系统用来...
C语言头文件 LOCALE.HC语言头文件 LOCALE.HC语言头文件 LOCALE.HC语言头文件 LOCALE.HC语言头文件 LOCALE.HC语言头文件 LOCALE.HC语言头文件 LOCALE.HC语言头文件 LOCALE.HC语言头文件 LOCALE.HC语言头文件 LOCALE....
在Laravel框架中,"locale"是一个至关重要的概念,它涉及到应用的多语言支持和国际化。Laravel 5本地化包则是为了帮助开发者更轻松地管理和实现应用的多语言功能。接下来,我们将深入探讨Laravel中的locale机制以及...
【Locale详解】 Locale是计算机系统中的一个重要概念,它关乎到软件如何适应不同地区的语言、文化和习惯。在国际化和本土化的过程中,locale起到了桥梁的作用,确保软件可以正确地处理和显示不同区域的语言信息。 ...
【Locale.Emulator.2.3.1.1.rar】是一个用于解决地区限制问题的工具,主要用于帮助用户在不改变系统区域设置的情况下运行特定地域版本的应用程序或游戏。这个压缩包包含的是“Locale Emulator”软件的版本2.3.1.1。...
Linux 中 locale 自用总结 locale 是根据计算机用户所使用的语言、所在国家或者地区、以及当地的文化传统所定义的一个软件运行时的语言环境。在 Linux 中,locale 把按照所涉及到的文化传统的各个方面分成 12 个...
java.util.Locale
标题 "Locale.Emulator.2.5.0.1.zip" 指的是 Locale Emulator 的一个特定版本,这是由 Microsoft 开发的一款实用工具,旨在帮助用户在不支持特定语言环境的操作系统上运行那些需要特定区域设置的应用程序。...
《区域模拟器(Locale Emulator)2.4.1.0:解决跨语言软件执行难题》 在IT领域,我们经常遇到这样的问题:某些软件或游戏由于设计时针对特定地区的语言环境,导致在非目标区域的系统上无法正常运行。为了解决这一...
在Spring MVC框架中,`Locale`是用来处理应用程序中的多语言支持的关键组件。它定义了用户的语言和地区设置,例如中文(zh_CN)或英文(en_US)。这篇博客文章将深入探讨如何在Spring MVC应用中实现语言切换功能,以...
官网搬的Locale.Emulator,地址http://pooi.moe/Locale-Emulator/,GIT地址https://github.com/xupefei/Locale-Emulator非常简洁好用的转区工具希望大家能关注一下
`locale_zh`部分则表明这个版本是针对中文用户的,意味着它可能包含了中文语言包,以提供符合中文用户习惯的界面和提示信息。 Bootstrap是一款流行的开源前端开发框架,它提供了一套美观的响应式布局和组件,使得...
【Locale.Emulator.1.2.0.1.zip】是一个软件压缩包,其中包含的“Locale Emulator”是一款用于Windows系统的工具,旨在帮助用户在不改变系统全局区域设置的情况下,运行那些要求特定地区设置的应用程序。这个工具...
在Laravel框架中,`laravel-locale`是一个用于实现多语言功能的重要组件。这个项目主要是为了帮助开发者在他们的Laravel-5应用中构建全球化、多语言支持的网站。下面我们将详细探讨`laravel-locale`的核心概念和使用...
Locale Emulator 是运行在 Windows 7 和 Windows 8/8.1 和WIN10系统下的一个软件,可以提供类似 NTLEA 和 AppLocale 的转区功能:即将系统区域设置(包括语言,时区,代码页等)虚拟为目标系统(例如日本区域)。...
首先,我们需要理解locale(本地化)在软件开发中的概念。本地化是指根据用户所在地区或语言环境调整软件的显示,使其更加符合用户的使用习惯。grid.locale-cn.js就是jqGrid针对中文环境的本地化文件,它包含了所有...
《Jqgrid中文本地化文件grid.locale-cn.js详解》 Jqgrid是一款广泛应用于Web开发中的强大表格插件,它提供了丰富的数据展示、编辑、排序、分页等功能,深受开发者喜爱。在Jqgrid的使用过程中,为了实现中文界面,就...
这是一个可运行的小例子,测试locale的java代码