我在一个项目中使用 WMD 降价编辑器来处理大量字段,这些字段对应于大量实体类中的大量属性。某些类可能有多个需要降价的属性。
我正在存储降价本身,因为这使得以后更容易编辑字段。但是,我需要将属性转换为 HTML 以便稍后显示。问题是:是否有一些模式可以用来避免在我的所有实体类中编写降价转换代码?
我创建了一个实用程序类,其方法接受降价字符串并返回 HTML。我正在使用 markdownj,这很好用。
问题是对于存储降价的每个类的每个属性,我可能需要另一种转换为 HTML 的方法:
public class Course{
private String description;
.
.
.
public String getDescription(){
return description;
}
public String getDescriptionAsHTML(){
return MarkdownUtil.convert(getDescription());
}
.
.
.
}
问题在于,如果 Course 类还有 2 个属性 Tuition 和 Prerequisites 说,它们都需要转换器,那么我将不得不编写 getTuitionAsHTML() 和 getPrerequisiteAsHTML()。
我觉得这有点难看,想要一个更清洁的解决方案。需要这个的类不是单个继承层次结构的一部分。
我正在考虑的另一个选择是在控制器而不是模型中执行此操作。您对此有何看法?
谢谢。
[编辑]:新想法(感谢 Jasper)。由于该项目使用 struts2(我之前没有说过),我可以创建一个视图组件,说它将为我转换降价。然后我在需要将值显示为 HTML 的地方使用它。