java 对象转xml格式
时间: 2023-09-01 11:06:28 浏览: 105
Java对象转换为XML格式可以通过Java中的JAXB(Java Architecture for XML Binding)实现。JAXB提供了将Java对象和XML之间相互转换的功能。
以下是一个简单的Java代码示例,演示如何将Java对象转换为XML格式:
```java
import javax.xml.bind.JAXBContext;
import javax.xml.bind.Marshaller;
import java.io.StringWriter;
public class ObjectToXml {
public static void main(String[] args) throws Exception {
// 创建一个Person对象
Person person = new Person();
person.setName("张三");
person.setAge(20);
// 创建JAXBContext对象
JAXBContext context = JAXBContext.newInstance(Person.class);
// 创建Marshaller对象
Marshaller marshaller = context.createMarshaller();
// 设置Marshaller的属性
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
// 将Java对象转换为XML格式
StringWriter writer = new StringWriter();
marshaller.marshal(person, writer);
String xml = writer.toString();
System.out.println(xml);
}
}
// 定义一个Person类
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class Person {
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; }
}
```
输出结果为:
```
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<person>
<name>张三</name>
<age>20</age>
</person>
```
在这个例子中,我们创建了一个Person对象,并使用JAXBContext和Marshaller将其转换为XML格式。我们还使用了@XmlRootElement注释来指定根元素的名称。最后,我们将XML字符串打印到控制台上。
注意:在使用JAXB进行对象转换时,必须在Java类中使用JAXB注释,以便JAXB可以正确地将Java对象转换为XML格式。
阅读全文