首页 / 专利库 / 专利权 / 第I章 / 国际申请 / 一种软件国际化处理方法、装置及系统

一种软件国际化处理方法、装置及系统

阅读:645发布:2020-05-16

专利汇可以提供一种软件国际化处理方法、装置及系统专利检索,专利查询,专利分析的服务。并且本 申请 涉及计算机技术领域,尤其涉及一种 软件 国际化处理方法、装置及系统,用以改善 现有技术 中对软件国际化处理不易维护的问题。通过将对应各个项目的提示文案的翻译数据作为多个翻译条目存储在翻译管理 服务器 中,以使得翻译管理服务器或翻译代理服务器返回针对客户端发送的翻译 请求 ,向客户端返回翻译数据,从而,实现对客户端所运行的项目中提示文案实时翻译成所需语言的目的,有效优化了软件国际化处理。而且,该方案中,项目所涉及到的提示文案的翻译数据与代码是分离的,当需要对提示文案的翻译数据进行更新时,也无需对 软件包 进行处理,利于开发人员维护软件包。,下面是一种软件国际化处理方法、装置及系统专利的具体信息内容。

1.一种软件国际化处理方法,其特征在于,包括:
翻译服务器接收客户端发送的携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
根据所述翻译请求,从翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型相匹配的翻译数据,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据;
返回所述翻译数据给所述客户端标识对应的客户端。
2.如权利要求1所述的方法,其特征在于,所述翻译服务器接收客户端发送的携带有客户端标识的翻译请求,具体包括:
翻译服务器接收翻译代理服务器转发的翻译请求;
以及,
返回所述翻译数据给所述客户端标识对应的客户端,具体包括:
通过所述翻译代理服务器将所述翻译数据返回给所述客户端标识对应的客户端。
3.如权利要求1所述的方法,其特征在于,所述翻译数据库设置在翻译服务器本地;
所述方法还包括:
周期性从翻译管理服务器中获取部分或全部翻译数据,更新本地的翻译数据库;
或者,
在接收到翻译管理服务器下发的更新通知时,从所述翻译管理服务器中获取部分或全部翻译数据,更新本地的翻译数据库。
4.如权利要求1-3任一项所述的方法,其特征在于,
所述翻译请求中还携带有项目标识;
所述翻译数据库包含有与项目标识对应的专有翻译数据库,以及公共翻译数据库;
根据所述翻译请求,从翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型相匹配的翻译数据,具体包括:
根据所述翻译请求,优先从公共翻译数据库中查找与所述翻译条目标识对应的翻译条目;
若查找成功,则进一步根据所述语言类型匹配出翻译数据;
若查找失败,则从与所述项目标识对应的专有翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型匹配的翻译数据。
5.如权利要求1-3任一项所述的方法,其特征在于,接收客户端发送的携带有客户端标识的翻译请求,具体包括:
接收客户端在本地缓存的翻译数据过期后发送的携带有客户端标识的翻译请求。
6.一种软件国际化处理方法,其特征在于,包括:
客户端向翻译服务器发送携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
接收所述翻译服务器返回的翻译数据,所述翻译数据是所述翻译服务器根据所述翻译请求从翻译数据库中查找得到,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
7.如权利要求6所述的方法,其特征在于,客户端向翻译服务器发送携带有客户端标识的翻译请求,具体包括:
当所述客户端缓存的翻译数据过期时,客户端向翻译服务器发送携带有客户端标识的翻译请求,所述缓存的翻译数据用于在所述客户端的本地设备上供所述客户端直接读取。
8.一种翻译服务器,其特征在于,包括:
接收单元,用于接收客户端发送的携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
处理单元,用于根据所述翻译请求,从翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型相匹配的翻译数据,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据;
发送单元,用于返回所述翻译数据给所述客户端标识对应的客户端。
9.一种客户端,其特征在于,包括:
第二发送单元,用于向翻译服务器发送携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
第二接收单元,用于接收所述翻译服务器返回的翻译数据,所述翻译数据是所述翻译服务器根据所述翻译请求从翻译数据库中查找得到,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
10.一种软件国际化处理系统,其特征在于,包括:翻译服务器和翻译数据库;其中,所述翻译服务器,用于接收客户端发送的携带有客户端标识的翻译请求,并根据所述翻译请求从翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型相匹配的翻译数据,以及返回所述翻译数据给所述客户端标识对应的客户端;其中,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
所述翻译数据库,用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
11.如权利要求10所述的系统,其特征在于,还包括:
翻译代理服务器,用于接收客户端发送的携带有客户端标识的翻译请求,并转发给所述翻译服务器;以及,
用于接收所述翻译服务器返回的翻译数据,并将所述翻译数据发送给所述客户端标识对应的客户端。
12.如权利要求10所述的系统,其特征在于,所述翻译数据库设置在翻译服务器本地;
所述系统还包括:
翻译管理服务器,用于周期性向翻译服务器提供部分或全部翻译数据,更新翻译服务器本地的翻译数据库;
或者,
用于向翻译服务器下发更新通知,所述更新通知指示所述翻译服务器从本翻译管理服务器中获取部分或全部翻译数据,更新翻译服务器本地的翻译数据库。

说明书全文

一种软件国际化处理方法、装置及系统

技术领域

[0001] 本申请涉及计算机技术领域,尤其涉及一种软件国际化处理方法、装置及系统。

背景技术

[0002] 随着国际交流的密切发展以及行业标准的国际统一化,多种软件项目需要语言国际化,即软件国际化(Software Internationalization)。
[0003] 目前,所有软件的提示文案都是内嵌到代码里,然后在为每个提示文案翻译之后,将对应所有可能涉及的语言类型的翻译数据制作成语言包,最后与代码打包到一起共同构成所谓的软件包
[0004] 然而,这种绑定式的软件国际化处理,不利于维护。发明内容
[0005] 本申请实施例提供一种软件国际化处理方法、装置及系统,用以改善现有技术中对软件国际化处理不易维护的问题。
[0006] 本申请实施例采用下述技术方案:
[0007] 一种软件国际化处理方法,包括:
[0008] 翻译服务器接收客户端发送的携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
[0009] 根据所述翻译请求,从翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型相匹配的翻译数据,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据;
[0010] 返回所述翻译数据给所述客户端标识对应的客户端。
[0011] 一种软件国际化处理方法,包括:
[0012] 客户端向翻译服务器发送携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
[0013] 接收所述翻译服务器返回的翻译数据,所述翻译数据是所述翻译服务器根据所述翻译请求从翻译数据库中查找得到,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0014] 一种翻译服务器,包括:
[0015] 接收单元,用于接收客户端发送的携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
[0016] 处理单元,用于根据所述翻译请求,从翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型相匹配的翻译数据,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据;
[0017] 发送单元,用于返回所述翻译数据给所述客户端标识对应的客户端。
[0018] 一种客户端,包括:
[0019] 第二发送单元,用于向翻译服务器发送携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
[0020] 第二接收单元,用于接收所述翻译服务器返回的翻译数据,所述翻译数据是所述翻译服务器根据所述翻译请求从翻译数据库中查找得到,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0021] 一种软件国际化处理系统,包括:翻译服务器和翻译数据库;其中,[0022] 所述翻译服务器,用于接收客户端发送的携带有客户端标识的翻译请求,并根据所述翻译请求从翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型相匹配的翻译数据,以及返回所述翻译数据给所述客户端标识对应的客户端;其中,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
[0023] 所述翻译数据库,用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0024] 本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
[0025] 通过将对应各个项目的提示文案的翻译数据作为多个翻译条目存储在翻译管理服务器中,以使得翻译管理服务器或翻译代理服务器能够在接收到客户端发送的翻译请求时,根据翻译请求匹配出相应的翻译数据,返回给客户端,从而,实现对客户端所运行的项目中提示文案实时翻译成所需语言的目的,有效优化了软件国际化处理。而且,该方案中,项目所涉及到的提示文案的翻译数据与代码是分离的,当需要对提示文案的翻译数据进行更新时,也无需对软件包进行处理,利于开发人员维护软件包。同时,该方案中通过翻译代理服务器响应客户端,且将翻译管理服务器中的翻译数据库同步到翻译代理服务器中,将查找翻译数据操作转移到翻译代理服务器,避免客户端直接访问翻译管理服务器而造成资源紧张,改善了运维人员的维护不易的问题。附图说明
[0026] 此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0027] 图1为本申请提供的翻译服务器执行软件国际化处理方法的流程示意图;
[0028] 图2为本申请实施例一提供的翻译代理服务器执行软件国际化处理方法的流程示意图;
[0029] 图3为本申请中翻译数据库以及包含的翻译条目的示意图;
[0030] 图4为本申请实施例一提供的客户端执行软件国际化处理方法的流程示意图;
[0031] 图5为本申请实施例一提供的翻译管理服务器执行软件国际化处理方法的流程示意图;
[0032] 图6为本申请实施例二提供的翻译管理服务器执行软件国际化处理方法的流程示意图;
[0033] 图7为本申请实施例二提供的客户端执行软件国际化处理方法的流程示意图;
[0034] 图8(a)为本申请实施例三提供的翻译代理服务器的结构示意图;
[0035] 图8(b)本申请实施例三提供的客户端的结构示意图;
[0036] 图8(c)为本申请实施例三提供的翻译管理服务器的结构示意图;
[0037] 图9(a)为本申请实施例四提供的翻译管理服务器的结构示意图;
[0038] 图9(b)为本申请实施例四提供的客户端的结构示意图;
[0039] 图10(a)为本申请实施例五提供的软件国际化处理系统的结构示意图之一;
[0040] 图10(b)为本申请实施例五提供的软件国际化处理系统的结构示意图之二。

具体实施方式

[0041] 为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0042] 以下结合附图,详细说明本申请各实施例提供的技术方案。
[0043] 如图1所示,为本申请提供的一种软件国际化处理的方法流程示意图,该方法主要包括以下步骤:
[0044] 步骤11:翻译服务器接收客户端发送的携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识。
[0045] 步骤12:根据所述翻译请求,从翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型相匹配的翻译数据。
[0046] 其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0047] 步骤13:返回所述翻译数据给所述客户端标识对应的客户端。
[0048] 该技术方案中,翻译服务器在接收到客户端发送的翻译请求时,根据翻译请求匹配出相应的翻译数据,返回给客户端,从而,实现对客户端所运行的项目中提示文案实时翻译成所需语言的目的,有效优化了软件国际化处理。而且,该方案中,项目所涉及到的提示文案的翻译数据与代码是分离的,当需要对提示文案的翻译数据进行更新时,也无需对软件包进行处理,利于开发人员维护。
[0049] 需要说明的是,在本申请中,翻译服务器可以在不同的实施例中分别充当不同的色,具体地:可以在以下实施例一中作为翻译代理服务器,分别与客户端以及翻译管理服务器进行交互;也可以在实施例二中作为翻译管理服务器,与客户端直接进行交互,或者,通过翻译代理服务器与客户端间接进行交互。下面通过实施例一~实施例五具体说明。
[0050] 实施例一
[0051] 翻译代理服务器侧方案
[0052] 如图2所示,为本申请实施例一提供的软件国际化处理方法的流程示意图之一,该方法的执行主体可以理解为局域网内的本地服务器,例如,本申请如下所涉及的翻译代理服务器,该翻译代理服务器主要用于代理网络侧的服务器为客户端提供语言翻译服务。该方法主要包括以下步骤:
[0053] 步骤21:翻译代理服务器接收客户端发送的携带有客户端标识的翻译请求。
[0054] 所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识。
[0055] 考虑到在翻译代理服务器侧接收到的翻译请求可能是来自多个客户端的多个翻译请求,因此,为了更好的处理各个翻译请求,并将处理结果正确返回给相应的客户端,可在翻译请求中添加客户端标识。
[0056] 其实,在本申请中,为了节省网络资源,可以在一个翻译请求中携带不止一个翻译条目标识,从而,保证一个翻译请求即可实现多个提示文案的翻译需求,获取到更多的翻译数据。而其中所涉及的翻译条目标识可以理解为唯一表征该翻译条目的标识,例如,可以是键值等形式。
[0057] 步骤22:翻译代理服务器根据翻译请求,从本地的翻译数据库中查找与所述翻译条目标识相对应,且与所述语言类型相匹配的翻译数据。
[0058] 其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0059] 翻译代理服务器本地存储的翻译数据库中各个翻译条目,可以是在软件项目开发阶段,通过搜集项目中代码所涵盖的提示文案,并经过多种翻译语言进行翻译处理得到的。所述提示文案可以为内嵌在代码中的提示语,或者,菜单、按钮等展示类的文案。
[0060] 例如:在编写代码时,若编写到某一行代码时,需要嵌入“确认”这一内容的提示文案,此时,可将该提示文案按照预设算法生成唯一表征该提示文案的键值(kye值,一般由多个字符组成),具体可采用MD5算法或者SHA-1算法,本申请对此并不做限定。之后,在代码中记录该key值,同时,提取该提示文案,并对该提示文案进行多种语言的翻译,最后,以该提示文案的key值作为翻译条目标识进行记录;其记录的内容可参照图3所示的翻译条目结构示意图,该翻译条目的key值为0115,中文翻译数据为“确认”,英文翻译数据为“confirm”,法文翻译数据为 若针对每个项目,都进行上述的翻译条目的提取操作,即可得到包含多个翻译条目的翻译条目集合。这些翻译条目集合中,是众多的项目中所涵盖的提示文案的翻译数据,可以包含世界所有的语言,或者根据实际的发布国家来设定有限的几种语言。进一步,可以将这些翻译条目或者翻译条目集合以数据库的形式存储。
[0061] 其实,为了便于软件项目的开发使用,开发人员会在开发阶段搜集该项目所涉及的所有提示文案的翻译数据,并上传到网络侧的翻译管理服务器,以便于进行翻译的维护管理。
[0062] 在本申请实施例中,翻译请求中还携带有项目标识,翻译数据库包含有与项目标识对应的专有翻译数据库,以及公共翻译数据库,具体参照图2所示,该翻译数据库中的公共翻译数据库存储有多个常见的提示文案对应的翻译条目,例如:各个项目代码中经常会出现的“确认”、“取消”等,为了方便查找,且提升翻译的规范统一化,可将这些常见的提示文案提取到公共翻译数据库中;另外,有一些特殊项目中,会使用特定的提示文案,例如“该场景中出现花朵”等,可为这些特殊项目单独设置一专有翻译数据库,例如,将项目A中所涉及的所有非常见提示文案提取到一起作为该项目A的专有数据库,以便于优化翻译数据的查找匹配效率。进而,该步骤22可具体执行为根据所述翻译请求,优先从公共翻译数据库中查找与所述翻译条目标识对应的翻译条目;若查找成功,则进一步根据所述语言类型匹配出翻译数据;若查找失败,则从与所述项目标识对应的专有翻译数据库中查找与所述翻译条目标识对应,且与所述语言类型匹配的翻译数据。从而,通过设置数据库优先级的方式,首先根据翻译请求查找优先级较高的公共翻译数据库,若查找失败后,才进一步查找优先级较低的专有翻译数据库;该查找方案可提升翻译数据的查找效率。
[0063] 步骤23:翻译代理服务器返回翻译数据给对应客户端标识的客户端。
[0064] 该翻译代理服务器查找出客户端所请求的翻译数据后,将返回给对应客户端标识的客户端,从而,实现对客户端上的项目中提示文案的翻译。
[0065] 可选地,在本申请中,翻译代理服务器中的翻译数据可以通过以下两种方式进行更新:
[0066] 方式一:周期性从翻译管理服务器中获取部分或全部翻译数据,更新本地的翻译数据库。
[0067] 方式二:在接收到翻译管理服务器下发的更新通知时,从所述翻译管理服务器中获取部分或全部翻译数据,更新本地的翻译数据库。
[0068] 其实,翻译数据的更新就是对翻译代理服务器本地存储的翻译数据库进行更新,具体包括:对翻译数据库中的翻译条目进行删除、添加、修改等操作,和/或对翻译条目中的翻译数据进行删除、添加、修改等操作。
[0069] 无论是方式一还是方式二,都可以实现对翻译代理服务器本地存储的翻译数据库进行更新的操作,从而,可以尽可能及时的与翻译管理服务器中的翻译数据库同步,提升翻译代理服务器作为翻译执行主体,在对接收到的翻译请求进行处理时的准确性。
[0070] 可选地,在本申请中,步骤21具体执行为:接收客户端在本地缓存的翻译数据过期后发送的携带有客户端标识的翻译请求。可见,此处的翻译请求是在客户端本地缓存的翻译数据过期后才发送的,表明该翻译请求是有发送条件的,从而,缓解了该翻译代理服务器的翻译处理,弱化了翻译代理服务器的资源紧张状况。
[0071] 上述技术方案中,通过将对应各个项目的提示文案的翻译数据作为多个翻译条目存储在翻译管理服务器中,以使得翻译管理服务器或能够同步翻译管理服务器中翻译数据库的翻译代理服务器,能够在接收到客户端发送的翻译请求时,根据翻译请求匹配出相应的翻译数据,返回给客户端,从而,实现对客户端所运行的项目中提示文案实时翻译成所需语言的目的,有效优化了软件国际化处理。而且,该方案中,项目所涉及到的提示文案的翻译数据与代码是分离的,当需要对提示文案的翻译数据进行更新时,也无需对软件包进行处理,利于开发人员维护软件包。同时,该方案中通过翻译代理服务器响应客户端,且将翻译管理服务器中的翻译数据库同步到翻译代理服务器中,将查找翻译数据操作转移到翻译代理服务器,避免客户端直接访问翻译管理服务器而造成资源紧张,改善了运维人员的维护不易的问题。
[0072] 客户端侧方案
[0073] 相应地,如图4所示,为本申请实施例一提供的软件国际化处理方法的流程示意图之二,该方法的执行主体可以理解为与局域网内的本地服务器进行直接交互的客户端,例如:电脑、手机等。该客户端用于请求上述翻译代理服务器返回翻译数据,具体地,该方法主要包括以下步骤:
[0074] 步骤41:客户端向翻译代理服务器发送携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识。
[0075] 考虑到在客户端使用软件包时,需要实现软件国际化,即能够将软件包的代码中所包含的提示文案翻译为所需语言,由于本申请的软件包中并不存在语言包,因此,可以在安装软件包后,运行软件时,根据当前运行的界面或者步骤所涉及的提示文案,通过网络服务如HTTP、Memacache等通信协议,向翻译代理服务器发送翻译请求,以获取所需语言的翻译数据,保证运行过程中的提示文案能够为用户所读懂。
[0076] 而考虑到翻译代理服务器可能会在同时接收到多个客户端发送的翻译请求,因此,为了能够区分翻译请求并正确返回翻译数据,需要在翻译请求中添加客户端标识,而客户端标识是唯一标识该客户端的信息,可以是字母、数字等字符。
[0077] 进一步,本申请所涉及的翻译请求可以是包含所要翻译的语言类型以及一个翻译条目标识的请求消息,或者,是包含所要翻译的语言类型以及多个翻译条目标识的请求消息;举例说明,当运行软件项目A时,其开始界面会有多个菜单键,那么,此时会触发客户端发送包含这个开启界面中所有提示文案的翻译条目标识的翻译请求,以及所要翻译的语言类型。
[0078] 步骤42:客户端接收所述翻译代理服务器返回的翻译数据,所述翻译数据是所述翻译代理服务器根据所述翻译请求从翻译数据库中查找得到。
[0079] 其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0080] 其实,客户端在接收到返回的翻译数据之后,可以将翻译数据缓存在本地,以便于后续再次运行软件时使用,避免反复查找操作。
[0081] 而考虑到本申请中的翻译数据是通过软件项目在运行过程中的实时请求来实现实时翻译的,因此,为了避免繁琐操作的同时,还要兼顾翻译数据的实时性。进而,本申请对本地存储的翻译数据进行有效性的判断,这一有效性主要由缓存时间来决定。当所述客户端缓存的翻译数据过期时,客户端向翻译代理服务器发送携带有客户端标识的翻译请求,所述缓存的翻译数据用于在所述客户端的本地设备上供所述客户端直接读取。
[0082] 具体地,可根据当前软件项目的稳定性为该软件项目中的所有提示文案对应的翻译数据设置一个统一的标准缓存时间,或者,为各个提示文案对应的翻译数据分别设置一个标准缓存时间,当客户端缓存的翻译数据实际的缓存时间大于标准缓存时间,则表示该翻译数据已经过期,不可使用,需要客户端重新发送翻译请求;当客户端缓存的翻译数据实际的缓存时间不大于标准缓存时间,则表示该翻译数据还未过期,属于有效的翻译数据,可以继续使用,即不需要发送翻译请求,而是从本地设备直接查找与提示文案的翻译条目标识对应的翻译数据。
[0083] 在上述技术方案中,客户端通过向翻译代理服务器发送翻译请求,之后,接收翻译代理服务器根据翻译请求从翻译数据库中查找到的翻译数据,从而,实现对客户端自身所运行的项目中提示文案的翻译成所需语言的目的,有效优化了软件国际化处理。而且,该方案中,项目所涉及到的提示文案的翻译数据与软件包中的代码是分离的,利于工作人员维护。同时,该方案中通过翻译代理服务器响应客户端,避免客户端直接访问翻译管理服务器而造成资源紧张,在一定程度上改善了运维人员的维护不易的问题。
[0084] 翻译管理服务器侧方案
[0085] 如图5所示,为本申请实施例提供的一种软件国际化处理方法的流程示意图,该方法的执行主体可以为网络侧的广域网服务器,例如,本申请下文所涉及的翻译管理服务器,该翻译管理服务器在本实施例一中主要用于为翻译代理服务器提供数据库服务。该翻译管理服务器主要执行以下步骤:
[0086] 步骤51:翻译管理服务器接收对应至少一个所辖项目的翻译条目并存储到翻译数据库,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据;
[0087] 步骤52:翻译管理服务器向翻译代理服务器发送更新通知,所述更新通知用于指示所述翻译代理服务器从所述翻译管理服务器中获取更新后的翻译数据。
[0088] 在上述技术方案中,项目所涉及到的提示文案的翻译数据与软件包中的代码是分离的,利于工作人员维护。
[0089] 实施例二
[0090] 翻译管理服务器侧方案
[0091] 如图6所示,为本申请实施例二提供的一种软件国际化处理方法的流程示意图之一,该实施例二中的翻译管理服务器与实施例一中的翻译管理服务器类似,只是执行的操作步骤略有不同,主要包括:
[0092] 步骤61:翻译管理服务器接收客户端发送的携带有客户端标识的翻译请求。
[0093] 所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识。
[0094] 步骤62:翻译管理服务器根据所述翻译请求,从翻译数据库中查找与所述翻译条目标识相对应,且与所述语言类型相匹配的翻译数据。
[0095] 其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0096] 同理,在本实施例二中,翻译管理服务器查找匹配翻译数据的操作与实施例一中翻译代理服务器的查找匹配翻译数据的操作相同;且本实施例二中翻译请求中同样也携带有项目标识,所述翻译数据库包含有与项目标识对应的专有翻译数据库,以及公共翻译数据库;同理,步骤62可具体执行为:根据所述翻译请求,优先从公共翻译数据库中查找与所述翻译条目标识对应的翻译条目;若查找成功,则进一步根据所述语言类型匹配出翻译数据;若查找失败,则从与所述项目标识对应的专有翻译数据库中查找与所述翻译条目标识对应,且与所述语言类型匹配的翻译数据。
[0097] 步骤63:翻译管理服务器返回所述翻译数据给所述客户端标识对应的客户端。
[0098] 在上述技术方案中,客户端可直接向翻译管理服务器发送翻译请求,之后,接收翻译管理服务器根据翻译请求从翻译数据库中查找到的翻译数据,从而,实现对客户端自身所运行的项目中提示文案的翻译成所需语言的目的,有效优化了软件国际化处理。而且,该方案中,项目所涉及到的提示文案的翻译数据与软件包中的代码是分离的,当需要对提示文案的翻译数据进行更新时,也无需对软件包进行处理,利于工作人员维护。
[0099] 可选地,该实施例二的方案中翻译管理服务器还可以接收翻译代理服务器转发的翻译请求;以及,在对翻译请求进行处理之后,通过所述翻译代理服务器将所述翻译数据返回给所述客户端标识对应的客户端。从而通过翻译代理服务器响应客户端,避免客户端直接访问翻译管理服务器而造成资源紧张,在一定程度上改善了运维人员的维护不易的问题。
[0100] 可选地,为了避免繁琐操作的同时,还要兼顾翻译数据的实时性。翻译管理服务器还可以接收翻译代理服务器在缓存于客户端的翻译数据过期后转发的翻译请求。
[0101] 客户端侧方案
[0102] 如图7所示,为本申请实施例二提供的一种软件国际化处理方法的流程示意图,该方法的执行主体与实施例一所涉及的客户端类似,该方法主要包括:
[0103] 步骤71:客户端向翻译管理服务器发送携带有客户端标识的翻译请求。
[0104] 所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识。
[0105] 可选地,为了避免繁琐操作的同时,还要兼顾翻译数据的实时性,步骤71具体执行为:当所述客户端缓存的翻译数据过期时,客户端向翻译管理服务器发送携带有客户端标识的翻译请求,所述缓存的翻译数据用于在所述客户端的本地设备上供所述客户端直接读取。
[0106] 其实,本实施例二中的客户端还可以通过翻译代理服务器向翻译管理服务器转发携带有客户端标识的翻译请求,以缓解翻译管理服务器的由于访问过多而导致资源紧张的问题。
[0107] 步骤72:客户端接收所述翻译管理服务器返回的翻译数据。
[0108] 所述翻译数据是所述翻译管理服务器根据所述翻译请求从翻译数据库中查找得到,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0109] 在上述技术方案中,客户端向翻译管理服务器发送翻译请求,之后,接收翻译管理服务器根据翻译请求从翻译数据库中查找到的翻译数据,从而,实现对客户端自身所运行的项目中提示文案的翻译成所需语言的目的,有效优化了软件国际化处理。该方案中项目所涉及到的提示文案的翻译数据与软件包中的代码是分离的,当需要对提示文案的翻译数据进行更新时,也无需对软件包进行处理,利于工作人员维护。
[0110] 实施例三
[0111] 翻译代理服务器
[0112] 如图8(a)所示,为本申请实施例三提供的一种翻译代理服务器的结构示意图,该翻译代理服务器具体可以为计算机设备,主要包括:
[0113] 代理侧接收单元81a,用于接收客户端发送的携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识。
[0114] 代理侧处理单元82a,用于根据所述翻译请求,从本地的翻译数据库中查找与所述翻译条目标识相对应,且与所述语言类型相匹配的翻译数据,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0115] 代理侧发送单元83a,用于返回所述翻译数据给对应所述客户端标识的客户端。
[0116] 可选地,该翻译代理服务器还包括:
[0117] 代理侧获取单元,用于周期性从翻译管理服务器中获取部分或全部翻译数据,更新本地的翻译数据库。
[0118] 可选地,所述代理侧获取单元,还用于在接收到翻译管理服务器下发的更新通知时,从所述翻译管理服务器中获取部分或全部翻译数据,更新本地的翻译数据库。
[0119] 可选地,所述代理侧接收单元,具体用于接收客户端在本地缓存的翻译数据过期后发送的携带有客户端标识的翻译请求。
[0120] 可选地,所述翻译请求中还携带有项目标识;所述翻译数据库包含有与项目标识对应的专有翻译数据库,以及公共翻译数据库;相应地,代理侧处理单元82,具体用于根据所述翻译请求,优先从公共翻译数据库中查找与所述翻译条目标识对应的翻译条目;若查找成功,则进一步根据所述语言类型匹配出翻译数据;若查找失败,则从与所述项目标识对应的专有翻译数据库中查找与所述翻译条目标识对应,且与所述语言类型匹配的翻译数据。
[0121] 客户端
[0122] 如图8(b)所示,为本申请实施例三提供的一种客户端的结构示意图,该客户端主要包括:
[0123] 客户端侧发送单元81b,用于向翻译代理服务器发送携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识。
[0124] 客户端侧接收单元82b,用于接收所述翻译代理服务器返回的翻译数据,所述翻译数据是所述翻译代理服务器根据所述翻译请求从翻译数据库中查找得到,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0125] 可选地,客户端侧发送单元81b,具体用于当所述客户端缓存的翻译数据过期时,向翻译代理服务器发送携带有客户端标识的翻译请求,所述缓存的翻译数据用于在所述客户端的本地设备上供所述客户端直接读取。
[0126] 可选地,所述翻译请求中还携带有项目标识;所述项目标识用于指示翻译代理服务器从所述项目标识对应的专有翻译数据库中查找与所述翻译条目标识对应,且与所述语言类型匹配的翻译数据。
[0127] 翻译管理服务器
[0128] 如图8(c)所示,为本申请实施例三提供的一种翻译管理服务器的结构示意图,该翻译管理服务器主要包括:
[0129] 管理侧接收单元81c,用于接收对应至少一个所辖项目的翻译条目并存储到翻译数据库,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据;
[0130] 管理侧发送单元82c,用于向翻译代理服务器发送更新通知,所述更新通知用于指示所述翻译代理服务器从所述翻译管理服务器中获取更新后的翻译数据。
[0131] 实施例四
[0132] 翻译管理服务器
[0133] 如图9(a)所示,为本申请实施例四提供的一种翻译管理服务器的结构示意图,该翻译管理服务器主要包括:
[0134] 管理侧接收单元91a,用于接收客户端发送的携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
[0135] 管理侧处理单元92a,用于根据所述翻译请求,从翻译数据库中查找与所述翻译条目标识相对应,且与所述语言类型相匹配的翻译数据,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据;
[0136] 管理侧发送单元93a,用于返回所述翻译数据给所述客户端标识对应的客户端。
[0137] 可选地,所述管理侧接收单元91a,具体用于接收翻译代理服务器转发的翻译请求;
[0138] 以及,
[0139] 所述管理侧发送单元93a,具体用于通过所述翻译代理服务器将所述翻译数据返回给所述客户端标识对应的客户端。
[0140] 可选地,所述管理侧接收单元93a,在用于接收翻译代理服务器转发的翻译请求时,具体包括:接收翻译代理服务器在缓存于客户端的翻译数据过期后转发的翻译请求。
[0141] 可选地,所述翻译请求中还携带有项目标识;所述翻译数据库包含有与项目标识对应的专有翻译数据库,以及公共翻译数据库;
[0142] 可选地,管理侧处理单元92a具体用于根据所述翻译请求,优先从公共翻译数据库中查找与所述翻译条目标识对应的翻译条目;若查找成功,则进一步根据所述语言类型匹配出翻译数据;若查找失败,则从与所述项目标识对应的专有翻译数据库中查找与所述翻译条目标识对应,且与所述语言类型匹配的翻译数据。
[0143] 客户端
[0144] 如图9(b)所示,为本申请实施例四提供的一种客户端的结构示意图,该其特征在于,包括:
[0145] 客户端侧发送单元91b,用于向翻译管理服务器发送携带有客户端标识的翻译请求,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
[0146] 客户端侧接收单元92b,用于接收所述翻译管理服务器返回的翻译数据,所述翻译数据是所述翻译管理服务器根据所述翻译请求从翻译数据库中查找得到,其中,所述翻译数据库用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0147] 可选地,客户端侧发送单元91b,具体用于当所述客户端缓存的翻译数据过期时,向翻译管理服务器发送携带有客户端标识的翻译请求,所述缓存的翻译数据用于在所述客户端的本地设备上供所述客户端直接读取。
[0148] 可选地,所述翻译请求中还携带有项目标识;所述项目标识用于指示翻译代理服务器从所述项目标识对应的专有翻译数据库中查找与所述翻译条目标识对应,且与所述语言类型匹配的翻译数据。
[0149] 实施例五
[0150] 本申请还提供一种软件国际化处理系统,该系统主要包括:翻译服务器和翻译数据库。
[0151] 所述翻译服务器,用于接收客户端发送的携带有客户端标识的翻译请求,并根据所述翻译请求从翻译数据库中查找与所述翻译条目标识相对应、且与所述语言类型相匹配的翻译数据,以及返回所述翻译数据给所述客户端标识对应的客户端;其中,所述翻译请求包含所要翻译的语言类型以及至少一个翻译条目标识;
[0152] 所述翻译数据库,用于存储翻译条目,所述翻译条目关联包括所要翻译的语言类型在内的至少一种语言类型的翻译数据。
[0153] 具体地,参照图10(a)所示,为本申请实施例五提供的一种软件国际化处理系统的结构示意图,该系统主要包括:翻译管理服务器101a和翻译代理服务器102a,以及存储在翻译管理服务器101a中的翻译数据库;其中,图中还示出了客户端103a。在图10(a)中,翻译管理服务器101a或者翻译代理服务器102a具备对翻译请求进行处理的功能,即能够根据翻译请求查找匹配出翻译数据。
[0154] 或者,参照图10(b)所示的系统结构示意图,该系统仅包括:翻译管理服务器101b和存储在该翻译管理服务器101b中的翻译数据库,另外,还示出了客户端102b,其中,翻译管理服务器101b具备对翻译请求进行处理的功能。
[0155] 需要说明的是,本申请实施例中所涉及的方案,可以支持多种编程语言,而且,通过提供多种编程语言的软件开发工具包SDK来优化网络服务交互性能。因此,本申请方案的适用范围较广,实用性较强。
[0156] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0157] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0158] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0159] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0160] 在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0161] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0162] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0163] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0164] 以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈