当前位置:K88软件开发文章中心编程语言JavaGroovy → 文章内容

Groovy 构建器

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-15 15:50:02

e> <StudentID>2</StudentID> </Student> <Student> <StudentName division = 'C'>Mark</StudentName> <StudentID>3</StudentID> </Student> </library>''' def rd = new StringReader(records) def doc = groovy.xml.DOMBuilder.parse(rd) JsonBuilder JsonBuilder用于创建json类型的对象。以下示例显示如何使用Json构建器。def builder = new groovy.json.JsonBuilder() def root = builder.students { student { studentname 'Joe' studentid '1' Marks( Subject1: 10, Subject2: 20, Subject3:30, ) } } println(builder.toString());上述程序的输出如下。输出clearlt显示Jsonbuilder能够从结构化的节点集合构建json对象。{"students":{"student":{"studentname":"Joe","studentid":"1","Marks":{"Subject1":10,"S ubject2":20,"Subject3":30}}}}jsonbuilder还可以接受一个列表并将其转换为json对象。以下示例说明如何完成此操作。def builder = new groovy.json.JsonBuilder() def lst = builder([1, 2, 3]) println(builder.toString());上述程序的输出如下。[1,2,3]jsonBuilder也可以用于类。以下示例显示类的对象如何成为json构建器的输入。def builder = new groovy.json.JsonBuilder() class Student { String name } def studentlist = [new Student (name: "Joe"), new Student (name: "Mark"), new Student (name: "John")] builder studentlist, { Student student ->name student.name} println(builder)上述程序的输出如下。[{"name":"Joe"},{"name":"Mark"},{"name":"John"}] NodeBuilder NodeBuilder用于创建Node对象的嵌套树以处理任意数据。下面显示了Nodebuilder的用法示例。def nodeBuilder = new NodeBuilder() def studentlist = nodeBuilder.userlist { user(id: '1', studentname: 'John', Subject: 'Chemistry') user(id: '2', studentname: 'Joe', Subject: 'Maths') user(id: '3', studentname: 'Mark', Subject: 'Physics') } println(studentlist) FileTreeBuilder FileTreeBuilder是一个从规范生成文件目录结构的构建器。以下是如何使用FileTreeBuilder的示例。tmpDir = File.createTempDir() def fileTreeBuilder = new FileTreeBuilder(tmpDir) fileTreeBuilder.dir('main') { dir('submain') { dir('Tutorial') { file('Sample.txt', 'println "Hello World"') } } }从上述代码的执行,将在文件夹main / submain / Tutorial中创建一个名为sample.txt的文件。而sample.txt文件将具有“Hello World”的文本。

上一页  [1] [2] 


Groovy 构建器