Groovy MarkupBuilder节点

问题描述

| 考虑以下代码:
def builder = new MarkupBuilder()
builder.root() {
}
我想将root子级的创建委托给一个单独的方法。如何完成这项任务?要考虑的一些选项是从方法创建和返回节点,或者传入父节点并将其添加到方法中(两个示例都将是有用的)。     

解决方法

Groovy网站包含有关如何实现此目的的说明。 样品:
def writer = new StringWriter()
def xml = new groovy.xml.MarkupBuilder(writer)
xml.books() {
   createBookNode(xml,2,\'mrhaki\')
}

def createBookNode(builder,repeat,username) {
    repeat.times {
       builder.person(name: username)
    }
}

println writer.toString()
输出将是:
<books>
    <person name=\"mrhaki\"/>
    <person name=\"mrhaki\"/>
</books>
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...