java json 转xml 自定义xml根
时间: 2023-08-05 17:07:27 浏览: 88
你可以使用第三方库,如 Jackson 或 Gson,将 JSON 转换为 Java 对象,然后使用 Java 提供的 XML 编组器将 Java 对象转换为 XML。
下面是一个示例代码:
```java
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator;
import java.io.IOException;
public class JsonToXmlExample {
public static void main(String[] args) throws IOException {
// JSON字符串
String json = "{\"name\":\"John Smith\",\"age\":32}";
// 将JSON转换为Java对象
ObjectMapper mapper = new ObjectMapper();
Person person = mapper.readValue(json, Person.class);
// 将Java对象转换为XML
XmlMapper xmlMapper = new XmlMapper();
xmlMapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true); // 添加XML声明
xmlMapper.configure(SerializationFeature.WRAP_ROOT_VALUE, true); // 添加根元素
String xml = xmlMapper.writeValueAsString(person);
System.out.println(xml);
}
}
// Person类
public class Person {
private String name;
private int age;
public Person() {}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// getter和setter方法
}
```
输出结果:
```xml
<?xml version='1.0' encoding='UTF-8'?>
<Person>
<name>John Smith</name>
<age>32</age>
</Person>
```
在这个示例中,我们使用 Jackson 和 XmlMapper 将 JSON 转换为 Java 对象,并使用 ToXmlGenerator 添加 XML 声明和根元素。
阅读全文