【郑州校区】学成在线 第7天 讲义-课程管理实战 四
2.3 数据字典
2.3.1介绍
在新增课程界面需要选择课程等级、课程状态等,这些信息统一采用数据字典管理的方式。
本项目对一些业务的分类配置信息,比如:课程等级、课程状态、用户类型、用户状态等进行统一管理,通过在数据库创建数据字典表来维护这些分类信息。
数据字典对系统的业务分类进行统一管理,并且也可以解决硬编码问题,比如添加课程时选择课程等级,下拉框中的课程等级信息如果在页面硬编码将造成不易修改维护的问题,所以从数据字典表中获取,如果要修改名称则在数据字典修改即可,提高系统的可维护性。
2.3.2 数据模型
在mongodb中创建数据字典表sys_dictionary
一个字典信息如下:
[AppleScript] 纯文本查看 复制代码 {
"
_id
"
: ObjectId(
"
5a7e8d2dd019f15418fa2b71
"
),
"
d_name
"
:
"
课程等级
"
,
"
d_type
"
:
"
200
"
,
"
d_value
"
: [
{
"
sd_name
"
:
"
低级
"
,
"
sd_id
"
:
"
200001
"
,
"
sd_status
"
:
"
1
"
},
{
"
sd_name
"
:
"
中级
"
,
"
sd_id
"
:
"
200002
"
,
"
sd_status
"
:
"
1
"
},
{
"
sd_name
"
:
"
高级
"
,
"
sd_id
"
:
"
200003
"
,
"
sd_status
"
:
"
1
"
}
]
}
字段说明如下:
d_name:字典名称
d_type:字典分类
d_value:字典数据
sd_name:项目名称
sd_id:项目id
sd_status:项目状态(1:可用,0不可用)
数据模型类:
[AppleScript] 纯文本查看 复制代码 @Data
@ToString
@Document(collection =
"
sys_dictionary
"
)
public class SysDictionary {
@Id
private String id;
@Field(
"
d_name
"
)
private String dName;
@Field(
"
d_type
"
)
private String dType;
@Field(
"
d_value
"
)
private List<SysDictionaryValue> dValue;
}
SysDictionaryValue类型:
[AppleScript] 纯文本查看 复制代码 @Data
@ToString
public class SysDictionaryValue {
@Field(
"
sd_id
"
)
private String sdId;
@Field(
"
sd_name
"
)
private String sdName;
@Field(
"
sd_status
"
)
private String sdStatus;
}
2.3.3 Api接口
[AppleScript] 纯文本查看 复制代码 @Api(value
=
"
数据字典接口
"
,description =
"
提供数据字典接口的管理、查询功能
"
)
public interface SysDicthinaryControllerApi {
//数据字典
@ApiOperation(value
=
"
数据字典查询接口
"
)
public SysDictionary getByType(String type);
}
|