在Scala中创建具有案例类的层次结构

时间:2016-07-13 13:42:46

标签: json scala hierarchy json-deserialization case-class

我有两种类型的文档:PDFDocument和XMLDocument。两者都是案例类(我需要匹配它们)。 现在,我需要一组文件。因此,我创建了PrivateDocument来构建层次结构。 这些文件我从请求到外部服务器得到它,所以我想验证该请求的响应:

response.json.validate[List[ProformaDocument]]

问题在于,如果PrivateDocument是一个案例类,则禁止进行案例到案例的继承。 如果PrivateDocument是特征或类,那么我无法反序列化JSON,因为特征没有读取。

在完成所有这些之后,我需要将List返回到提问它的网页。所以,我再次需要将List转换为Json数组。

在这种情况下,我可以做些什么来建立正确的层次结构并管理案例类/ Json转换?

1 个答案:

答案 0 :(得分:0)

你仍然可以在普通班级上进行比赛。

虽然case-to-case继承不起作用,但你可以创建一个普通的抽象基类,并从中继承case类。