import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.Dom4JDriver;
public class Test {
/**
* 目标对象
* @author Lihc
*
*/
class UserTest {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public static void main(String[] args)throws Exception{
/*
* 准备测试数据
*/
List u = new ArrayList();
for(int i = 0; i<2;i++){
UserTest r = new UserTest();
r.setName("测试");
r.setAge(100);
u.add(r);
}
/*
* 测试过程
*/
XStream xstream = new XStream(new Dom4JDriver());
xstream.alias("user", UserTest.class);
Document document = DocumentHelper.createDocument(DocumentHelper.createElement("yycs"));
Document document1 = DocumentHelper.parseText(xstream.toXML(u));
Document document2 = DocumentHelper.parseText(xstream.toXML(u));
Element user1 = (Element)document1.selectSingleNode("//list");
//Element user2 = (Element)document2.selectSingleNode("//list");
document.getRootElement().appendContent(user1);
// document.getRootElement().appendContent(user2);
System.out.println(document.asXML());
}
}
分享到:
相关推荐
要将Java对象转换成XML并包含CDATA,我们可以利用如XStream这样的库。XStream是一个简单且功能强大的库,用于将Java对象转换为XML,反之亦然。在上述例子中,我们看到了一个自定义的实现过程,包括三个主要类:...
JAXB是Java SE的一部分,它提供了将Java对象直接转换为XML文档,以及从XML文档反序列化回Java对象的能力。首先,你需要为要转换的对象创建对应的Java类,并使用`@XmlRootElement`、`@XmlElement`等注解来指定XML...
在Java编程中,将Java对象转换为XML是一个常见的任务,特别是在数据交换或持久化数据时。这个过程通常称为对象XML序列化。以下是一些关于如何实现这一转换的关键知识点: 1. **Java对象到XML的转换工具**: - **...
2. **Marshaller**: 将Java对象转换为XML文档。 3. **Binder**: 用于在Java类和XML Schema之间建立映射关系。 ### XML到Java对象的转换 要将XML转换为Java对象,首先需要一个对应的Java类,该类的字段与XML元素...
通过`Marshaller`,你可以将Java对象转换成XML字符串、写入到文件或流中。例如,如果你有一个名为`myObject`的Java对象,并希望将其转换为XML字符串,可以这样做: ```java Marshaller marshaller = jaxbContext....
2. 序列化XML:使用`Marshaller`接口将Java对象转换为XML文档。例如: ```java JAXBContext jaxbContext = JAXBContext.newInstance(User.class); Marshaller marshaller = jaxbContext.createMarshaller(); ...
总之,XML文件自动转成Java对象工具是Java开发中不可或缺的一部分,它极大地简化了XML数据处理,提高了开发效率。通过理解和利用这类工具,开发者可以更专注于业务逻辑,而非基础的数据转换工作。
`XMLEncoder`是一个用于将Java对象编码为XML输出流的类,它能够将对象的属性和结构转换为XML格式。而`XMLDecoder`则相反,它可以解析XML输入流并重建原始的Java对象。这两个工具使得在XML和Java对象之间进行序列化和...
接着,你可以将Java对象转换为XML字符串: ```java Person person = new Person(); person.setName("John"); person.setAge(30); String xml = xstream.toXML(person); System.out.println(xml); ``` 反之,如果...
首先,Java与XML的转化通常涉及两个主要步骤:解析XML文件生成Java对象和将Java对象转换成XML。这两个过程分别对应于XML解析器和对象到XML的序列化库。 1. XML解析器生成Java对象: 当我们需要从XML文件中提取数据...
3. **生成XML**:有了映射文件后,使用`Marshaller`类可以将Java对象转换成XML字符串或写入文件。例如: ```java Marshaller marshaller = new Marshaller(new FileWriter("output.xml")); marshaller.marshal...
JAXB允许我们自动将XML文档映射到Java对象,以及将Java对象转换为XML文档。要使用JAXB,你需要先创建一个Java类来表示XML结构,然后利用JAXB提供的工具生成对应的XML绑定类。以下是基本步骤: 1. **定义Java对象**...
这会将XML数据解析成Java对象。 3. **Java对象到XML**: 如果需要将Java对象序列化为XML,可以使用`XmlMapper`的`write()`方法,将Java对象写入到OutputStream或Writer。 在压缩包中的`Betwixt_xml_to_JavaObject`...
Java Architecture for XML Binding (JAXB) 是一个Java标准,它提供了在Java对象和XML文档之间进行自动转换的能力。这项技术极大地简化了XML数据处理,使得开发者可以方便地将Java对象序列化为XML,或者从XML数据中...
- **生成XML**:通过`JAXBContext`实例,你可以获取`Marshaller`对象,然后调用`marshal()`方法将Java对象转换为XML字符串或文件。 2. **DOM解析**:Document Object Model(DOM)是另一种处理XML的方式。通过构建...
simple-xml2object是一个简单实用的xml和JAVA对象转换的类库,jar包很小,而且不需要任何依赖包。 下载后,压缩包包含一个jar包,导入即可。包含一个测试类,有详细的注释展示用法。还包含一个中文文档。
- **序列化**: XStream可以将一个Java对象转换成XML字符串,这个过程叫做对象的序列化。通过简单的API调用,开发者可以将复杂的Java对象结构转化为易于理解和处理的XML格式。 - **反序列化**: 反之,它也能将XML...
然而,如果你的项目中涉及到了Web服务,特别是基于SOAP的服务,那么`jaxws-api`可能是必需的,因为它包含了处理XML和Java对象转换的类。 总结一下,Java对象与XML之间的转换主要依赖于JAXB框架。通过定义Java类和...
使用java jdk的JAXB技术实现xml与java对象互相转化代码教程: JDK中JAXB相关的重要Class和Interface:(来源于百度百科JAXB) •JAXBContext类,是应用的入口,用于管理XML/Java绑定信息。 •Marshaller接口,将Java...
将XML转换为对象是Java编程中常见的任务,它允许开发者更方便地处理XML数据,将XML文档结构映射到Java对象上。在Java中,JDOM库是一个流行的处理XML的API,提供了读取、创建和修改XML文档的功能。 标题提到的"xml转...