我正在阅读一个XML文件,其中包含一个基于Domain Class的模式.
这是一个简单的例子(我目前的情况涉及许多类中的很多字段):
class Player {
String name
Date birthDate
}
Run Code Online (Sandbox Code Playgroud)
要读取的XML文件是:
<players>
<player name='P1' birthDate='12-09-1983'/>
</players>
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:在解析XML文件时,我使用以下Groovy代码创建Player实例:
def players = new XmlSlurper().parse(xmlFile)
players.player.each() {p ->
new Player(name: p.@name, birthDate: p.@birthDate).save()
}
Run Code Online (Sandbox Code Playgroud)
还有另一种更简单的方法吗?就像使用代码new Player(params)或player.properties = params?创建/更新域对象时的params绑定一样
实际上,您可以使用attributes()直接将属性列表提供给域类构造函数.
def players = new XmlSlurper().parse(xmlFile)
players.player.each() {p ->
new Player(p.attributes()).save()
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5654 次 |
| 最近记录: |