Digester解析XML字段赋值

前端之家收集整理的这篇文章主要介绍了Digester解析XML字段赋值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

XML文件

<?xml version="1.0" encoding="GBK" standalone="no" ?>
<ROOT>
    <RETURN_CODE type="long">0</RETURN_CODE>
    <RETURN_MSG type="string">ok!</RETURN_MSG>
    <USER_MSG type="string">ok!</USER_MSG>
    <DETAIL_MSG type="string">OK!</DETAIL_MSG>
    <PROMPT_MSG type="string"/>
    <OUT_DATA>
        <DATA>
            <LIST>
                <LIST_INFO>
                    <EFF_DATE type="string">20190222135846</EFF_DATE>
                    <EXP_DATE type="string">20991231235959</EXP_DATE>
                    <MAX_ORDER_NUM type="int">10</MAX_ORDER_NUM>
                    <USED_ORDER_NUM type="int">0</USED_ORDER_NUM>
                    <LIMIT_INFO>
                        <LIMIT_FLAG type="string">X</LIMIT_FLAG>
                        <EFF_DATE type="string">20190222135846</EFF_DATE>
                        <EXP_DATE type="string">20991231235959</EXP_DATE>
                        <NOTES type="string">xxxxx</NOTES>
                        <LIST/>
                        <RETURN_CODE type="string">403019589</RETURN_CODE>
                    </LIMIT_INFO>
                </LIST_INFO>
            </LIST>
        </DATA>
    </OUT_DATA>
</ROOT>

上面的XML中,LIST_INFO节点下存在两种属性属性值是基本类型,比如EFF_DATE,EXP_DATE等;属性值是另一个节点,比如LIMIT_INFO。解析规则如下:

//基本数据类型:模式,字段名digester.addBeanPropertySetter("ROOT/OUT_DATA/DATA/LIST/LIST_INFO/EFF_DATE","effDate");//引用数据类型:模式,相应setter方法digester.addSetNext("ROOT/OUT_DATA/DATA/LIST/LIST_INFO/LIMIT_INFO","setLimitInfo");

猜你在找的XML相关文章