当值为 null 时 Scala Xml 自动瞬态
我知道用 pojo 生成 xml 我可以做这样的事情,
class Person(name : String, age : Int){
def toXml() = <person><name>{ name }</name><age>{ age }</age></person>;
}
问题是,如果 name = null,我会
<person><name></name><age>8</age></person>
真的,我希望节点在值为 null 时是瞬态的
<person><age>8</age></person>
有没有一种干净的方法来完成此操作?谢谢。
I know to generate xml with pojo I can do something like this,
class Person(name : String, age : Int){
def toXml() = <person><name>{ name }</name><age>{ age }</age></person>;
}
The problem is that if name = null, the I would have
<person><name></name><age>8</age></person>
when really, I want the node to be transient when the value is null
<person><age>8</age></person>
Is there a clean way to accomplish this? thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
以下代码对我有用。
干杯
The following code works for me.
Cheers
如果 name 可以为 null,另一种(更实用?)方法是使用 Option:
我很确定它可以变得不那么冗长,但优点是您指定 name 是可选的,然后类型检查器将强制来处理这个问题。
对于普通字符串,您需要自己记住空检查。
If name can be null, another (more functional?) approach is to use Option:
I'm pretty sure it can be made less verbose, but the advantage is that you're specifying that name is optional and then the type checker will force to deal with that.
With a plain String you need to remember the null check by yourself.