国际化组件

1. 背景介绍
1.1 业务背景
针对海外项目,系统需要灵活支持不同语言的切换


2.设计思路
后台系统负责管理词条,前端负责根据登录语言 获取 对应词条做页面渲染
PS:登录成功获取所有词条缓存浏览器内存,前端每次从内存中获取

3.使用示例
3.1 引入i18n的核心jar包

3.2 api调用
I18nUtil工具类
1.自动补全
2.数据拼接

3.3 liquibase
1)针对已存在language只需维护t_i18n_code表
2)针对新language需要维护t_i18n_language和t_i18n_code

4. 数据库设计
4.1 语言表t_i18n_language

字段

类型

描述

id

bigint(11)

主键

language_code

varchar(16)

语言编码

language_name

varchar(16)

语言名称

4.2 词条表t_i18n_code

字段

类型

描述

id

bigint(11)

主键

i18n_code

varchar(128)

国际化编码

desc

varchar(128)

描述

zh_cn

varchar(512)

中文名称

en_us

varchar(512)

英语名称

ja_jp

varchar(512)

日语名称

5.API 设计

5.1 语言查询(首页初始化调用)

GET /language/query

请求参数
无参,查所有
响应格式

{

"code": 200, // 200 操作成功 500 操作失败 404 参数检验失败 401 暂未登录或token已经过期 403 没有相关权限

"message":"操作成功", //额外参考信息

"data":"[{'language_code':'zh_cn','language_name':'中文'}]"

}

5.2 字典查询(首页登录初始化调用)

GET /i18n/query

请求参数
无参,查所有
响应格式

{

"code": 200, // 200 操作成功 500 操作失败 404 参数检验失败 401 暂未登录或token已经过期 403 没有相关权限

"message":"操作成功", //额外参考信息

"data":"[{'i18n_code':'lang.linkwise.UserManager.addUser','zh_cn':'用户新增','en_us':'Add user','jp_jp':'ユーザーの追加'}]"

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值