xml与Java对象的转换详解

时间:2021-05-19

xml与Java对象的转换详解

1.xstream解析报文

XStreamComponent x = XStreamComponent.newInstance(); x.processAnnotations(new Class[]{EquityExchangeDetail.class,PearTicketCustomerDTO.class,Date.class,Integer.class}); EquityExchangeDetail ptd = (EquityExchangeDetail) x.fromXML(xml);

2.xstream封装报文

XStreamComponent xres = XStreamComponent.newInstance(); xres.processAnnotations(new Class[]{TransResult.class}); String result=xres.toXML(transResult);

3.注解:

@XStreamAlias("customerInfo") //报文中<customerInfo>节点对应类名“PearTicketCustomerDTO”public class PearTicketCustomerDTO {@XStreamAlias("idno") //报文中<idno>节点对应类属性“idno” private String idno;@XStreamOmitFieldprivate Long ticketId; //报文中无<ticketId>节点 ,解析时忽略类属性ticketId

4.方法比较

x.processAnnotations(new Class[]{PearTicketDTO.class}):读取类名注解x.alias(new Class[]{PearTicketDTO.class}):不读取类名注解

5.解析报文

x.alias("Equities", List.class);--把报文节点<Equities> 转化为List对象x.alias("Equity", Equity.class);--把报文节点<Equity> 转化为Equity类对象List<Equity> equities = (List<Equity>) x.fromXML(xml);--开始转化

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章