前后端中英文映射,数据格式问题

查看 65|回复 5
作者:steelshadow39   
后端一个数据对象中包含十几个英文属性和值,但在前端要用中文给用户展示。
目前我能想到的是后端加一个属性对象,然后传给前端的对象的属性都用该对象描述。 举个例子
原始数据格式
"riskLevel": "low"
修改后的格式
"riskLevel": {
"label": "风险等级",
"value": "low"
}
属性对象
public class Porperty {
private String label;
private T value;
}
请教 V 友还有哪些比较好的方式
wzdsfl   
我们这采取的方案就走一个接口叫 CommonEnum ,把所有的字段/值的中文映射放在这
{
"riskLevel":"风险等级",
"low":"低",
}
azure233   
如果字段多或者考虑扩展性的话 写一个字典服务 简单点实现就使用 enum 然后写个接口将 enum 转成 map 返给前端
steelshadow39
OP
  
@wzdsfl 这样的话,前端传过去 key 是"riskLevel"还是"风险等级"?如果是后者的话,前端会用中文做 key 吗?
XiLingHost   
可以考虑单独留个 i18n 接口,传 key 和 lang 进去回 text 回来
fciasth   
@MapppingColumn(enumName = "riskLevelEnum")
private Byte riskLevel;
private String riskLevelName;
自定义注解+切面+反射,每次 response 返回的时候去处理,获取注解上的常量 map ,然后利用反射设置对应的值给中文字段(固定格式,例如:xxxName 或 xxxStr )
您需要登录后才可以回帖 登录 | 立即注册

返回顶部