java将bean转为xml
时间: 2024-06-08 10:09:54 浏览: 145
javabean 与 xml文件转换
Java中可以使用Java对象与XML文档相互转换,一般使用JAXB(Java Architecture for XML Binding)实现。
具体步骤如下:
1. 创建Java类,使用注解进行标记,并设置对应属性的get和set方法。
2. 创建JAXBContext对象,用于处理Java对象与XML之间的转换。
3. 创建Marshaller对象,用于将Java对象转换为XML。
4. 调用Marshaller对象的marshal()方法,将Java对象转换为XML,可以将转换后的XML输出到文件或控制台。
下面是一个简单的示例代码:
```java
import java.io.File;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
public class BeanToXml {
public static void main(String[] args) {
// 创建Java对象
Person person = new Person();
person.setName("张三");
person.setAge(18);
try {
// 创建JAXBContext对象
JAXBContext jaxbContext = JAXBContext.newInstance(Person.class);
// 创建Marshaller对象
Marshaller marshaller = jaxbContext.createMarshaller();
// 设置Marshaller属性,格式化输出XML
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
// 调用Marshaller对象的marshal()方法,将Java对象转换为XML,并输出到控制台
marshaller.marshal(person, System.out);
// 将Java对象转换为XML文件
File file = new File("person.xml");
marshaller.marshal(person, file);
} catch (JAXBException e) {
e.printStackTrace();
}
}
}
// Java类
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class Person {
private String name;
private int age;
public String getName() {
return name;
}
@XmlElement
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
@XmlElement
public void setAge(int age) {
this.age = age;
}
}
```
运行该代码,将生成一个名为“person.xml”的XML文件,内容如下:
```xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<person>
<name>张三</name>
<age>18</age>
</person>
```
这就是将Java对象转换为XML的过程。
阅读全文