1. 首页
  2. 技术文章
  3. Java类库

如何使用Jackson Dataformat XML框架实现XML和JSON之间的互转

如何使用Jackson Dataformat XML框架实现XML和JSON之间的互转 Jackson是一个流行的Java库,用于在JSON和Java对象之间进行序列化和反序列化。Jackson还提供了一个Jackson Dataformat XML模块,用于在XML和JSON之间进行转换。 本文将指导您如何使用Jackson Dataformat XML模块来实现XML和JSON之间的互转。下面是一些示例代码,以帮助您更好地理解这个过程。 1. 首先,您需要在项目中添加Jackson Dataformat XML库的依赖。 Gradle: implementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.12.4' Maven: <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-xml</artifactId> <version>2.12.4</version> </dependency> 2. 将Java对象转换为XML 假设我们有一个Java对象,如下所示: public class Person { private String name; private int age; // 省略构造方法和getter/setter } 为了将该Java对象转换为XML,我们可以使用以下代码: ObjectMapper objectMapper = new XmlMapper(); Person person = new Person("张三", 25); try { String xml = objectMapper.writeValueAsString(person); System.out.println(xml); } catch (JsonProcessingException e) { e.printStackTrace(); } 以上代码将会输出如下的XML: <Person> <name>张三</name> <age>25</age> </Person> 3. 将XML转换为Java对象 假设我们有一个XML字符串,如下所示: <Person> <name>李四</name> <age>30</age> </Person> 为了将XML字符串转换为Java对象,我们可以使用以下代码: ObjectMapper objectMapper = new XmlMapper(); String xml = "<Person><name>李四</name><age>30</age></Person>"; try { Person person = objectMapper.readValue(xml, Person.class); System.out.println("姓名:" + person.getName()); System.out.println("年龄:" + person.getAge()); } catch (JsonProcessingException e) { e.printStackTrace(); } 以上代码将输出: 姓名:李四 年龄:30 通过上述示例,您可以看到如何使用Jackson Dataformat XML模块在XML和JSON之间进行转换。您可以根据自己的需求进行定制,处理更复杂的XML和JSON结构。 希望本文能够帮助您理解如何使用Jackson Dataformat XML框架实现XML和JSON之间的互转。祝您编码愉快!
Read in English