字典表设计_web项目字典表多语言设计

字典表设计_web项目字典表多语言设计一、业务场景 Web项目开发中,字典表的一般都会存在,主要用来给整个系统提供基础服务。比如男女性别的类型可以使用 0和1来进行表示,在存储数据和查询数据的时候,就可以使用字典表中的数据进行翻译处理。再比如之前做的一个 项目中宠物类型包含老虎-1、海豚-2、大象-3、长颈鹿-4等等;做答题处理时的答题

一、业务场景

  Web项目开发中,字典表的一般都会存在,主要用来给整个系统提供基础服务。比如男女性别的类型可以使用

01来进行表示,在存储数据和查询数据的时候,就可以使用字典表中的数据进行翻译处理。再比如之前做的一个

项目中宠物类型包含老虎-1、海豚-2、大象-3、长颈鹿-4等等;做答题处理时的答题类型,比如单选题、多选题、填空

题等等;比较常用的有用户类型,普通用户还是VIP用户等等;这些类型的数据也可以存储在数据字典中进行统一处理。

二、需求分析

  一般情况下在不同的表中存储数据时,会使用到字典表的数据,比如说用户表在存储用户信息时,用户类型

就会存储字典表中对应的值,而不会存储中文的用户类型。这样在数据处理的时候会方便很多,如使用mysql,有些

关键字段使用中文存储的话,则可能会出现各种问题,在进行排序和分组操作的时候,支持不是很友好。因此各种

类型一般都是使用英文字符和数字进行存储。这样在查询数据的时候,就需要对存储的类型进行翻译操作。常规的

有几种方式,一种是在查询的时候直接进行表关联进行查询,直接将查询的数据翻译为中文,还有一种方式就是

在页面中去进行翻译处理,或者在代码中进行处理。比如0表示性别女,1表示性别男,在页面中显示的时候,

就需要将其值转换成对应的男和女。

三、解决方案

  具体该如何实现数据字典的存储呢?常用的有两种方式:一种是使用两张表来存储字典表的数据,一张表存储各种

类型数据,一张表存储类型对应的具体的值。自己在以往开发的项目中,大多都是使用这种方式,简单明了,一看就懂。

如下面的两种设计方式,都是使用两张表来保存数据。

 字典表设计_web项目字典表多语言设计

 字典表设计_web项目字典表多语言设计

还有一种方式是使用一张表来存储字典表的数据。这种设计的字段不多,只使用一张表就可以完成两张表的功能,

主要字段有父id,字典类型,分组名称,存储值,显示值,排序值等等。简单解释一下这种设计方式,排序

值就不用多说,比如用户类型有好几种,在页面中添加的时候,可以对其进行排序,方便页面中展示。存储值就是真正

存储的值比如1,显示值就是对应的中文意思,比如1对应的是男。分组名称可以看作是一个具体的类型,比如用户类型。

字典类型可以有多种,按照需要来进行设置,比如与用户相关的,与菜单相关的,与日志相关的等等。父id不用说,

存在子父级关系,比如二级联动的时候,常规的有省市二级联动,选择一个值的时候,另外一个值也会跟着变化,

这时候就可以使用起来。

提示:推荐使用在页面中进行翻译的方式,可以加快数据处理的效率。因为数据字典中的数据一般不会太多,可以全部

加载到缓存当中,页面中查询的时候,直接从缓存当中获取,效率很快。

今天的文章字典表设计_web项目字典表多语言设计分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/51219.html

(0)
编程小号编程小号
上一篇 2023-09-01 14:17
下一篇 2023-09-01

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注