1.xstream解析報文
1
2
3
|
XStreamComponent x = XStreamComponent.newInstance(); x.processAnnotations( new Class[]{EquityExchangeDetail. class ,PearTicketCustomerDTO. class ,Date. class ,Integer. class }); EquityExchangeDetail ptd = (EquityExchangeDetail) x.fromXML(xml); |
2.xstream封裝報文
1
2
3
|
XStreamComponent xres = XStreamComponent.newInstance(); xres.processAnnotations( new Class[]{TransResult. class }); String result=xres.toXML(transResult); |
3.注解:
1
2
3
4
5
6
|
@XStreamAlias ( "customerInfo" ) //報文中<customerInfo>節點對應類名“PearTicketCustomerDTO” public class PearTicketCustomerDTO { @XStreamAlias ( "idno" ) //報文中<idno>節點對應類屬性“idno” private String idno; @XStreamOmitField private Long ticketId; //報文中無<ticketId>節點 ,解析時忽略類屬性ticketId |
4.方法比較
1
2
|
x.processAnnotations( new Class[]{PearTicketDTO. class }):讀取類名注解 x.alias( new Class[]{PearTicketDTO. class }):不讀取類名注解 |
5.解析報文
1
2
3
|
x.alias( "Equities" , List. class );--把報文節點<Equities> 轉化為List對象 x.alias( "Equity" , Equity. class );--把報文節點<Equity> 轉化為Equity類對象 List<Equity> equities = (List<Equity>) x.fromXML(xml);--開始轉化 |
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
原文鏈接:http://blog.csdn.net/u014401141/article/details/53939205