groovy生成Xml报文
使用MarkupBuilder
创建xml报文的builder,参数为Writer
对象
@Test
void test1() {
def writer = new StringWriter()
def builder = new MarkupBuilder(writer)
builder.mkp.xmlDeclaration(version: "1.0", encoding: "UTF-8")
builder.Packet(type: "REQUEST", version: "1.0") {
Head {
User("user")
Password("password")
}
Body(_body())
}
String result = writer.toString()
println result
}
Closure _body() {
{
content {
inner ("inner")
}
outer ("outer")
} as Closure
}
xmlDeclaration
可以声明xml格式- 字段后大括号对应一个新的子节点
- 字段后小括号中内容表示该字段对应的值
- 字段后小括号内容可以传递一个闭包,闭包中内容规则和上面一致
输出结果为:
<?xml version='1.0' encoding='UTF-8'?>
user
password
inner
outer