假设我有以下课程:
class Person(val firstName:String,val lastName:String)
是否有自动方法从此类生成xml而无需手动创建toXml()方法?理想情况下,输出将类似于:
<Person> <firstName>John</firstName> <lastName>Smith</lastName> </Person>
似乎应该有一种方法可以做到这一点,而无需手动编写所有这些。也许有一个我还没有找到的特质?
答案 0 :(得分:5)
对于case
类(或Product
的其他子类),这通常很容易编写:可以使用productPrefix
检索名称,所有值都可以通过{{进行迭代1}}和productIterator
字段的名称。
不幸的是,productElementName
只有很短的生命:它已添加到revision 20958并在revision 21223中删除,显然是因为它给案例类增加了太多的重量(还有一个open ticket为此。)
答案 1 :(得分:3)
不幸的是,我不认为有这样一个神奇的特质。您可以使用XStream之类的东西来完成此任务。但是,它似乎并不会自动打印所有Scala类,因此您可能需要编写自己的转换器。 Someone else在列表的情况下已经这样做了,我想你的例子可能需要类似的东西。