您现在的位置是:首页 > 技术交流技术交流
java转xml maven扩展包推荐 比XStream与JAXB更好的xml方式
上善若水2020-08-14 14:55:36【技术交流】 4582人已围观
简介最近在做java转xml时遇到了一些问题,在百度上搜索可用的jar时,首先搜索到的是JAXB放时,这种方式我遇到的两个问题,后来换成XStream,还行,直到我在maven仓库中找到了jackson-
最近在做java转xml时遇到了一些问题,在百度上搜索可用的jar时,首先搜索到的是JAXB放时,这种方式我遇到的两个问题,后来换成XStream,还行,直到我在maven仓库中找到了jackson-dataformat-xml
,这才是最完美的方式.
首先说说jackson-dataformat-xm
jackson-dataformat-xm
1.首先引入jar包
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>2.11.1</version>
</dependency>
2.部分核心注解
@JacksonXmlRootElement(localName = "Request")
public class LazadaCreateProductRequest {
@JacksonXmlProperty(localName = "Product")
private LazadaCreateProduct Product;
public LazadaCreateProduct getProduct() {
return Product;
}
public void setProduct(LazadaCreateProduct Product) {
this.Product = Product;
}
}
使用方式
//2.将javaBean装换xml字符串
XmlMapper xml = new XmlMapper();
xml.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true);//添加xml头部
String createProductPayload=null;
xml.enable(SerializationFeature.INDENT_OUTPUT);//美化xml方便查看
try {
createProductPayload = xml.writeValueAsString(lazadaCreateProductRequest);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
说说我在JAXB
遇到的坑
1.自己建立测试项目使用jdk13没有问题,吧代码移植过来后就报java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
,需要手动在maven中引入jar包十分麻烦.
2.JAXB
在解析对象为map
的成员变量时,不能正确的解析,效果会是下图这样.
再说说我在XStream
XStream其实还不错,就是使用起来会给你一个警告,高版本jdk貌似体验不是蛮好,然后我就放弃使用
很赞哦! (13)
相关文章
随机图文
-
这么多有趣的冷知识,你知道多少呢?
1、两个拳头的周长是脖子的周长。2、 七个脚长是身体的高度。3、 人的左右鼻孔三小时替换呼吸一回,只有感冒了你才深切感觉得到。4、 人在下午没有灵感、越到晚上越聪明、沐浴时更有创造性。5、 血管长度可 -
让人瞬间爆笑的笑话精选,520没有准备礼物的,就讲个笑话哄哄吧
1、那时候十二三岁我都懂了,下课时候来的,流了很多血,我一点都不慌,倒是我的同学们很害怕,我费了大半天给她们解释什么是生理期,什么是大姨妈,直到老师来了,对我说,男孩子没有这些东西,让我赶紧去医院。 2、初中的时候刚带隐形眼镜,回到家给奶奶说戴隐形眼镜了。奶奶问我什么是隐形眼镜,我用小镊子夹起来给奶奶看,奶奶说:还真是隐形的呢。奶奶走出屋后我发现,没夹起来!!! 3、和朋友去吃小龙虾, 隔壁桌 -
支付宝集福一天15张技能GET,隐藏福额外福你知道吗
支付宝集福一天15张技能GET,全民集五福,开心过年,除了扫正常的福还有许多隐藏福,贡献出福大家扫扫,来给大家娓娓道来,祝大家早日集齐五福全家福.1.普通AR扫福 活动前些天是每天两张但是目前是3张, -
php把对象foreach 循环 Iterator遍历对象 php进阶
php高级技术把一个对象foreach循环遍历,很多框架中都实现了Iterator 然后就可以foreach去遍历这个对象,下面简单尝试编写一个简单的demo去循环遍历对象. class A impl