本篇内容主要讲解“XML和JSON是怎么互相转换”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“XML和JSON是怎么互相转换”吧!
创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站制作、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的九原网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
依赖
在Spring Boot或者Spring Cloud的 Web 项目中只需要引入:
<dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-xml</artifactId> </dependency>
这个是 jackson 的的 XML 格式化模块,已经自动加入了依赖池。
XML 与 Java 对象互转
XML 和 JSON 互相转换的流程都是先转换为 Java 对象,然后再转换为目标类型。
XmlMapper
XML 转对象需要定义一个XmlMapper,这个对应了转换 JSON 的ObjectMapper,甚至XmlMapper是ObjectMapper的子类。我们来声明一个XmlMapper,你可以new一个,如果你采用了默认的配置的话。
XmlMapper xmlMapper = new XmlMapper();
如果你需要定制推荐使用建造者的方式,比如下面:
XmlMapper build = XmlMapper.builder() // 忽略实体类没有对应属性 如果为 true 会抛出异常 .configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES,false) // 忽略null .serializationInclusion(JsonInclude.Include.NON_NULL) // 属性使用 驼峰首字母小写 .propertyNamingStrategy(PropertyNamingStrategy.LOWER_CAMEL_CASE) .build();
演示
接下来我们来用一个 DEMO 进行演示,先定义一个test.xml的 XML 文件,内容为
<?xml version="1.0" encoding="UTF-8" ?> <User> <username>felord.cn</username> <age>18</age> <created><![CDATA[<2020-10-22>]]></created> </User>
<![CDATA[]]>比转义字符要香的多,可读性更强。
对应的实体类为:
@Data public class User { private String username; private Integer age; // private String created; }
然后利用上面构造的builder来进行转换操作:
ClassPathResource classPathResource = new ClassPathResource("./test.xml"); User user = build.readValue(classPathResource.getFile(), User.class); // Java User(username=felord.cn, age=18, created=<2020-10-22>) System.out.println("xml file to Java Object " + user); String s = build.writeValueAsString(user); // <User><username>felord.cn</username><age>18</age><created><2020-10-22></created></User> System.out.println("Java Object to xml string " + s); User u = build.readValue(s, User.class); // Java User(username=felord.cn, age=18, created=<2020-10-22>) System.out.println("xml string to Java Object" + u);
既然能够转对象那么再转 JSON 也没啥难度了。
当然也支持注解的方式。
到此,相信大家对“XML和JSON是怎么互相转换”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
文章标题:XML和JSON是怎么互相转换
转载来于:/article6/pjedog.html
成都网站建设公司_创新互联,为您提供网站内链、软件开发、服务器托管、响应式网站、品牌网站建设、手机网站建设
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联