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

使用groovy将类序列化到xml并输出

阅读更多
最近开始研究groovy,语法还是比较简洁的,跟用java的时候完全不一样.
下面是找到的一个例子, 比较有趣, 而且简单. 将现成的类序列化到xml后可以在项目中作为测试数据, 需要的时候导入就可以了.
import com.thoughtworks.xstream.*

class Staff {
    String firstname, lastname, position
}

def xstream = new XStream()
def john = new Staff(firstname:'John',
                     lastname:'Connor',
                     position:'Resistance Leader')

println xstream.toXML(john)  //console输出转换的结果

new File("c:/john.xml").withOutputStream { out ->    //打印到一个文件里
    xstream.toXML(john, out)
}


这个代码里实际上使用了xstream这个包, 通过这个工具包进行的转换, 关于这个包的介绍可以看XStream
分享到:
评论

相关推荐

    Groovy 动态修改XML

    4. **保存或序列化XML**:修改完成后,需要将XML对象转换回字符串或写入文件。可以使用`toPrettyString()`或`writeTo()`方法: ```groovy def updatedXmlStr = groovy.xml.XmlUtil.serialize(xml) xml.write(new ...

    xstream_dom4j_jdom_groovy解析xml

    XStream是一个Java库,它提供了将Java对象序列化为XML,以及从XML反序列化回Java对象的能力。它的核心优势在于简洁的API和易于理解的输出。XStream通过简单的注解或类路径映射,可以将复杂的Java对象结构转换成清晰...

    android调用webservice 的对象序列化代码

    5. 对象序列化:如果WebService返回的对象需要在Android端进行反序列化,可以创建一个对应的Java类,并使用` PropertyInfo `对象来描述其属性: ```java public class ResponseObject { private String property1;...

    android XMl 解析神奇xstream 二: 把对象转换成xml

    5. **反序列化XML**:从XML字符串恢复Java对象同样简单: ```java Person person = (Person) xstream.fromXML(xml); ``` 6. **处理复杂的对象结构**:XStream可以处理嵌套的对象和集合。例如,`Person`类包含一...

    Xstream生成和解析xml.rar

    这将把`User`类映射为`person`标签,并将`age`属性作为XML的属性输出。 **四、XML解析** 1. **基本使用** 将XML字符串反序列化为Java对象,使用`fromXML()`方法: ```java String xml = "<User><name>Tom</name>...

    XML转换为JAVA对象的方法

    反之,如果你有一个XML字符串,可以使用XStream将其反序列化回Java对象: ```java String xmlInput = "<person><name>John</name><age>30</age></person>"; Person deserializedPerson = (Person) xstream.fromXML...

    Android应用源码之AndroidXstream(解决xml和对象转换问题).rar

    同样,反序列化XML到Java对象也很简单: ```java String xmlData = "<myObject>...</myObject>"; MyObject newObj = (MyObject) xstream.fromXML(xmlData); ``` 除了基本的序列化和反序列化,XStream还支持处理...

    simple-xml jar包

    然而,XML的解析和序列化通常需要借助于专门的库来实现,其中Simple-XML就是一个高效且易于使用的库。本篇文章将深入探讨Simple-XML库,包括其核心特性、安装方法、使用示例以及与其他XML解析库的对比。 ### 1. ...

    Android-用于Kotlin序列化的Retrofit2Converter.Factory

    要将Kotlinx.Serialization与Retrofit2集成,我们需要创建一个自定义的`Converter.Factory`,这个工厂类会处理序列化和反序列化的过程。具体步骤如下: 1. **添加依赖**:首先,在项目构建文件(build.gradle)中...

    xStream转换xml和json源码

    xStream是一个轻量级的Java库,用于将Java对象序列化为XML,同时也能将XML反序列化回Java对象。这个强大的工具同样支持JSON格式,使得在Java应用程序中处理XML和JSON数据变得非常便捷。本篇文章将深入探讨xStream...

    读取网络json文件并保存到指定xml文件代码

    总结来说,从网络读取JSON文件并保存到XML文件,你需要掌握网络请求、JSON解析和XML序列化等技术。在Android中,可以结合HttpURLConnection、org.json库、json2xml库以及FileOutputStream等工具来实现这个过程。记住...

    android XMl 解析神奇xstream 三: 把复杂对象转换成对象

    在Android开发中,XML是一种广泛使用的数据交换格式,特别是在序列化和反序列化对象时。XStream是一个强大的库,它允许我们轻松地将Java对象转换为XML,反之亦然。本篇文章将深入探讨如何利用XStream在Android环境中...

    [Timeline Sec] - CVE-2020-9484:Tomcat Session 反序列化复现1

    总之,CVE-2020-9484是Apache Tomcat中的一个重要安全问题,涉及到会话管理器的配置和反序列化过程,可能引发远程代码执行的风险。了解这个漏洞的工作原理和复现方法对于提升网络安全防护能力至关重要。

    XStream Deserializable Vulnerablity And Groovy CVE-2015-3253漏洞分析

    对于开发人员而言,理解和防范此类漏洞至关重要,包括避免不必要的序列化、限制反序列化数据源、及时更新库到安全版本,以及使用安全的序列化库。 总结,这个漏洞不仅仅是一个简单的函数执行问题,而是涉及到对象的...

    Android开发-Retrofit-AndroidStudio(四)simplexml解析XML_免积分

    `Call<List<User>>`表示返回类型,`List<User>`是通过反序列化XML数据得到的对象集合。 接下来,配置Retrofit实例。在你的应用的某个初始化位置创建Retrofit对象,指定基础URL和转换器工厂: ```java import ...

    kettle有关xml的多种写入方式

    5. **XML序列化** - **CSV到XML,JSON到XML等**:Kettle提供了将其他数据格式(如CSV、JSON)转换为XML的功能。这通常涉及“CSV输入”、“JSON输入”步骤,然后连接到“XML输出”步骤进行转换。 6. **XML索引和...

    安卓Android源码——AndroidXstream(解决xml和对象转换问题).zip

    在Android开发中,数据的序列化与反序列化是一个常见的需求,这通常涉及到XML和对象之间的转换。AndroidXstream是一个强大的库,它可以帮助开发者轻松地完成这个任务。本压缩包"安卓Android源码——AndroidXstream...

    Java安全之SnakeYaml反序列化分析.doc

    SnakeYaml遵循YAML 1.1规范,支持UTF-8/UTF-16编码,并能处理Java对象的序列化和反序列化。 **SnakeYaml序列化与反序列化** 1. **序列化**: - `dump(Object data)`:将Java对象转换为YAML字符串。 - `dump...

    java解析XML dom4j dom4j-1.6.1.jar

    通过上述内容,我们了解了dom4j的基本用法,包括解析、遍历、修改和序列化XML文档,以及使用XPath进行节点查询。在实际开发中,这些功能可以极大地简化XML处理任务。尽管dom4j-1.6.1.jar是一个较旧的版本,但其核心...

    Android 采用pull生成XML数据

    然后,在解析XML时,我们首先创建一个`PullParser`实例,可以使用`XmlPullParserFactory`工厂类来获取: ```java XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); factory.setNamespaceAware...

Global site tag (gtag.js) - Google Analytics