精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2011-07-13
---------------------正题---------------------------------- 数据字典:在数据库表中定义某个dictType:比如'国家',再写具体的dictItem:比如“中.国”,“美.国”,“小.日.本”。 前台通过自定义标签也好,或者后台直接传值也好,显示到页面。 无论哪种方式,都需要在代码中写死具体的dictType。(也正常,你要显示这个字典,当然要写dictType是什么了。) 但是 问题来了: 该字典可以修改,改动dictItem当然没关系,(我对字典的好处理解也仅仅是这个)。 要是把这个字典类删除了,或者改了名了(比如dictType由’国家‘改成‘国籍’),怎么办???要重新编码?? 请大拿们分析分析。是不是字典约定就不能更改字典大类? -------------------问题2-------------------- 再比如说账户状态: 在数据库字典里配置了: 0:正常 1:销户 2:冻结 在页面上要判断状态,以便执行不同的操作。 这样的字典能改吗?伤不起! 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-07-13
求指点!!!
|
|
返回顶楼 | |
发表时间:2011-07-13
字典类,分为两种,一类为可变,即用户可以随时添加,另一类为系统内部数据,不可变。
对于不可变数据,可以系统内部硬编码使用。 字典类数据除可视部分之外,还应该有一个相对应的系统不可变编码相对应,编码用于系统内部判断和实现,可视数据用于界面展现。 字典类数据一般不允许被删除,除非这个字典数据从来没有被系统内部引用(当然可以被禁用,禁用表示系统不可见) 字典类名称可以修改,修改不影响具体使用,因为内部引用没有发生变化。 |
|
返回顶楼 | |
发表时间:2011-07-14
.........
我现在知道怎么做了,需要做一个映射。 |
|
返回顶楼 | |
发表时间:2011-07-14
系统数据字典可分为三个层次:
第一:平台层--->指系统依赖的底层平台级数据字典,如:标准字段类型;这个层次只能在开发平台阶段修改,其余不允许修改。 第二:应用层--->指系统应用逻辑涉及的数据字典,如上述的用户状态类型;这个只能在开发系统的时候修改,客户无权修改。 第三:表现层---->指最终客户自己定义的数字典,如国家分类;这个客户可随时动态添加 这个三个层次都得做控制。所以在数据字典表中得定数据字典平台标志字段,通过这个字段可控制。 当然数据字典还分生命周期,这个在上面也体现了。 生命周期又分为:开发,测试,维护。这些阶段数据字典的操作规则都不同的。 希望对你有用。 |
|
返回顶楼 | |
发表时间:2011-07-14
hailiang0901 写道 系统数据字典可分为三个层次: 第一:平台层--->指系统依赖的底层平台级数据字典,如:标准字段类型;这个层次只能在开发平台阶段修改,其余不允许修改。 第二:应用层--->指系统应用逻辑涉及的数据字典,如上述的用户状态类型;这个只能在开发系统的时候修改,客户无权修改。 第三:表现层---->指最终客户自己定义的数字典,如国家分类;这个客户可随时动态添加 这个三个层次都得做控制。所以在数据字典表中得定数据字典平台标志字段,通过这个字段可控制。 当然数据字典还分生命周期,这个在上面也体现了。 生命周期又分为:开发,测试,维护。这些阶段数据字典的操作规则都不同的。 希望对你有用。 恩 总结的不错 |
|
返回顶楼 | |
发表时间:2011-07-15
我加了个readonly
|
|
返回顶楼 | |
发表时间:2011-07-16
关于这个问题 有没有什么好的解决方法吗 请详细说明下 谢谢
|
|
返回顶楼 | |
发表时间:2011-07-17
我开发的时候用的是枚举,然后用自定义标签通过反射机制把枚举读出来,但是我认为这样有违反了当初用枚举的初衷,不知他人有更好的方法
|
|
返回顶楼 | |
发表时间:2011-07-17
我一般是这样处理的
我把数据字典分两种: 一,集合内的元素无特例,即你值的变化或集合个数的变化,不会对我程序造成影响,比如车型、国家、性别之类(当然不同系统有不同要求,仅仅是举例),这个我一般会用数据库来配置 然后加一些简单的系统参数的配置来做例外 比如正常逻辑:其它国籍的人过来要亲(国籍定义在数据库)。 定义例外:日本、越南的人过来要打。(这些例外可能在其它参数里配置) 当这些例外越来越多的时候,就得变化了,比如有些可以直接那个啥的,或S+M之类的。 我可能会将这些动作作为国籍的一个附加属性或其它的设计方法来。 二,集合内的元素的变动将会引起逻辑的更改,我会用枚举。比如某些动作的集合(如上面的亲、打、那个啥),某些重要类型的集合 |
|
返回顶楼 | |