`
berdy
  • 浏览: 512379 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

groovy 操作xml

 
阅读更多
<langs type='current' count='3' mainstream='true'>
  <language flavor='static' version='1.5'>Java</language>
  <language flavor='dynamic' version='1.6.0'>Groovy</language>
  <language flavor='dynamic' version='1.9'>JavaScript</language>
</langs>


//XmlParser使用Gpath,返回Node,NodeList,以及属性对应的Map
//所以你在访问xml文件中的属性时,也就如同访问list和map中的属性
def langs = new XmlParser().parseText(xml)
//获取属性
println langs.attribute("count")
//获取节点
langs.language.each{
  println it.text()
}
//结合使用Gpath和spread-dot
def values = langs.language*.text()

//使用XmlSlurper,返回的是groovy.util.slurpersupport.GPathResult
//使用XmlSluper访问xml时在写法上更加的便捷
langs = new XmlSlurper().parseText(xml)
println langs.language.@count
langs.language.each{
  println it
}


//构造xml
def out =new StringWriter()
def xml = new MarkupBuilder(out)
//构造一段xml如同构造一个java对象
//groovy引擎在找不到name方法,address方法时,自动识别为添加元素
xml.person{
	name(type:'berdy')
	address('上海')
	friends{
		for(i in 1..10)
			friend i
	}
}
println out.toString()
0
0
分享到:
评论

相关推荐

    Groovy 动态修改XML

    在Java生态系统中,Groovy经常被用来处理XML文档,因为它的动态特性使得XML的读取、修改和生成变得更加简单。 在Groovy中,XML被视为一种对象,可以通过内置的XMLSlurper和XMLParser库来解析和操作。XMLSlurper是...

    groovy-xml-2.2.0-beta-1.zip

    "groovy-xml-2.2.0-beta-1.zip" 文件是Groovy的一个版本,专注于XML处理功能,特别适用于在Groovy中解析、操作和生成XML文档。这个版本为2.2.0的beta-1,意味着它是该版本系列中的早期测试版,开发者可能在其中寻找...

    xstream_dom4j_jdom_groovy解析xml

    XMLSlurper尤其适合快速读取XML,而XMLParser则适用于需要更精确控制的场景。Groovy的动态特性使得处理XML变得更为简洁,减少了样板代码。 4. **JDOM**: JDOM是专为Java设计的一个XML处理库,旨在提供一种简单、...

    groovy

    3. 数据处理:Groovy可以方便地处理XML、JSON等数据格式,常用于数据转换和解析。 4. 测试:Spock测试框架使用Groovy编写,提供了富有表达力的测试语句,简化了测试代码的编写。 5. 容器管理:在Apache Kafka、...

    Groovy.in.Action.2nd.Edition.pdf

    4. GPath语法:Groovy对XML和类似结构的查询提供了强大的语法支持,使得开发者可以非常方便地查询和操作XML文档和复杂的对象图。 5. 运行时和编译时特性:Groovy在运行时提供了大量的便捷特性,如隐式和显式的类型...

    Groovy学习资料(包括Groovy in action 的中英文以及API)

    此外,Groovy还提供了强大的操作集合、字符串和文件的能力,其内置的GString和AntBuilder等工具使得日常任务处理变得轻松。书中还涵盖了Groovy对XML和JSON的支持,使得数据交换和解析更加便捷。 压缩包中的"API...

    apache-groovy-sdk-3.0.6.zip

    5. **Groovy类库**:Groovy标准库提供了一系列的类和模块,涵盖了集合操作、元编程、XML处理、网络I/O等多个领域,这些类库极大地丰富了Groovy的内置功能。 6. **Gradle集成**:由于Groovy是Gradle的默认脚本语言,...

    groovy+in+action

    - **XML处理**:Groovy内置了强大的XML处理功能,支持XPath查询、DOM操作等。 - **单元测试**:Groovy支持多种单元测试框架,如JUnit、Spock等,提供了更简洁的测试语法。 #### 四、结语 《Groovy in Action》这...

    spring-beans-groovy源码

    在`spring-beans-groovy`中,Groovy的Bean定义被编译为一个`GroovyBeanDefinitionReader`实例,该类负责读取Groovy脚本并转换为Spring的`BeanDefinition`对象。`BeanDefinition`是Spring容器中的核心概念,它包含了...

    groovy语法掘金1

    在本文中,我们将深入探讨Groovy的高级语法,特别是与JSON和XML操作相关的部分。 首先,我们来看看Groovy如何处理JSON数据。Groovy提供了一个内置的`JsonSlurper`类,用于将JSON字符串解析成Groovy的对象。例如,...

    apache-groovy-sdk-2.4.4

    4. **Groovy库**:SDK包含了完整的Groovy标准库,这些库提供了许多内置函数和类,覆盖了I/O、网络、XML处理、日期时间等多方面功能,极大地丰富了Groovy的生态系统。 5. **Ant任务**:对于使用Apache Ant构建系统的...

    Groovy学习笔记

    - **Groovy标记**: 支持多种标记语言,如XML、HTML等。 - **GroovyPath表达式语言**:类似于XPath,用于处理XML文档。 - **Groovlet**: 一种简化版的Servlet实现方式。 - **GroovySQL**: 提供了更简便的方式与SQL...

    groovy_demo

    - **内置DSLs**:Groovy内建了用于构建XML和SQL的DSL,使得处理这些任务更直观。 - **自定义DSL**:Groovy的简洁语法和元编程能力使得构建自己的DSL变得容易,常用于配置和构建工具,如Gradle。 6. **集合操作**...

    Groovy and Grails Recipes.pdf

    - **数据格式**:通常使用JSON或XML作为数据交换格式。 - **错误处理**:通过HTTP状态码和自定义异常来处理和返回错误信息。 **7. Groovy和Grails在企业级项目中的应用** - **集成测试**:利用Groovy的单元测试...

    Programming_Groovy_2.7z

    - Gradle的Groovy DSL(领域特定语言)比Ant或Maven的XML配置更易读、易写。 6. **Spock测试框架** - Groovy还催生了Spock测试框架,它提供了一种声明式的测试语法,使测试代码更具可读性和维护性。 7. **Groovy...

    groovy学习

    - Groovy可以与Spring框架无缝集成,创建Spring Beans时,Groovy类可以直接作为配置,无需XML。 - 使用`@GrailsCompileStatic`注解可以将Groovy类转换为静态类型的类,以获得更好的性能和类型安全。 - 在Spring ...

    groovy-eclipse插件 适用于eclipse3.5

    安装Groovy-Eclipse插件到Eclipse 3.5通常通过Eclipse的“软件更新”或“安装新软件”功能,使用提供的site.xml来引导下载和安装过程。安装完成后,开发者就可以在Eclipse中享受到Groovy的强大功能,同时保持与Java...

Global site tag (gtag.js) - Google Analytics