我正在寻找有关用于以下场景的最佳模式的建议。
涉及从域级别对象转换为 UI DTO
对于有问题的对象,BeanUtils
或者PropertyUtils
将执行大部分转换。
我的域级别对象包含一个“类型”属性。基于这种类型,我们需要将 DTO“标签”属性设置为友好名称。
- 所以对于 AAA 类型,我们需要创建如下标签:
property1 + "-" + property2
- 对于 BBB 类型,我们需要创建如下标签:
property2 + "/" + property1
- 对于 CCC 类型,我们需要根据数据库查询创建标签
(上面的逻辑过于简单了)
在没有研究所有可能的设计模式的情况下,我想到了以下模式:
- 创建多个 LabelCreationStrategies,每种类型一个
- 在我的对象转换助手中,注入将“类型”映射到策略的映射
- 所以当对象转换发生时,它会找到合适的策略,并创建最合适的标签。
还有哪些其他模式可以在这里工作?
谢谢