跪求生成下面格式的XML文件的方法

锅盖头 发布于 2014/07/31 10:57
阅读 132
收藏 0

<?xml version="1.0" encoding="utf-8"?>
    <route>
    <summary>  <!-- 产品的基本信息 -->
        <title>{产品名称,必填}</title>
        <teamno>{产品团号}</teamno>
        <resourceid>{对应供应商系统,产品ID,必填}</resourceid>
        <pfunction>{产品类别,free-自由行/group-跟团游/free_package-自由打包,必填}</pfunction>
        <pcomposition>{自由行产品组成元素(两项以上以"/"隔开),交通/酒店/门票/签证/接送机/其它(元素名称),自由行必填}</pcomposition>
        <day>{行程天数,正整型,必填}</day>
        <advanceday>{提前报名天数,正整型,必填}</advanceday>
        <advancedaytype>{提前报名类型,自然日/工作日,必填}</advancedaytype>
        <departure>{始发地,必填}</departure>
        <arrive>{目的地,必填}</arrive>
        <arrivetype>{目的地类型,国内游/出境游/港澳台,必填}</arrivetype>
        <distancetype>{短途/长途,必填}</distancetype>
        <freetriptotraffic>{去程交通:火车/飞机/巴士/邮轮,必填}</freetriptotraffic>
        <freetripbacktraffic>{回程交通:火车/飞机/巴士/邮轮,必填}</freetripbacktraffic>
        <image>{图片链接,多图片用逗号分隔,必填,至少有一张图片}</image>
        <recommendation>{推荐理由,必填}</recommendation>
        <feature>{线路特色,必填,支持富文本}</feature>
        <visa>{签证,支持富文本}</visa>
        <feeinclude>{费用包含,支持富文本}</feeinclude>
        <feeexclude>{费用不包含,支持富文本}</feeexclude>
        <attention>{注意事项,支持富文本}</attention>
        <tip>{有情提示,支持富文本}</tip>
        <payway>{付款方式,0-即时付款/1-二次确认}</payway>
        <istaocan>{是否套餐,true/false}</istaocan>
        <taocanadultcount>{套餐成人数,int,必填}</taocanadultcount>
        <taocanchildcount>{套餐儿童数,int,默认为0}</taocanchildcount>
        <taocanroomcount>{房间数,int,默认为0}</taocanroomcount>
        <status>{产品状态,on sale/offline}</status>
    </summary>
    <days>  <!-- 参考行程,跟团游必须有 -->
        <day daynum="{参考行程天数序号,正整数,必填}" daytitle="{当天标题,必填}"> <!-- 一个行程,可以多个 -->
            <sightimage>{图片,多图片用逗号分隔}</sightimage>
            <daydescription>{参考行程描述,必填,支持富文本}</daydescription>
            <daytraffic>{汽车/飞机/火车/轮船/其他(其它内容)}</daytraffic>
            <dayhotelstar starname="{其他/客栈/农家院/二星或同等酒店/三星或同等酒店/四星或同等酒店/五星或同等酒店/六星或同等酒店/七星或同等酒店/八星或同等酒店}" stardesc="{住宿描述}" />
            <meals>
                <meal mealtype="{早/中/晚}" mealdesc="{餐内容描述}" />
            </meals>
        </day>
    </days>
    <packages> <!--自由行和自由打包的组成,自由行和自由打包时必填 -->
        <package id="{包唯一性id,自由打包必填}" status="{1,表示选中/2,表示未选中/3,表示删除,默认为选中}">
            <traffics>
                <traffic>
                    <totraffic>   <!-- 自由行或自由打包去程交通-->
                        <!-- 请保证seq唯一性,因为这个交通的顺序号,不可以重复 -->
                        <flight seq="{序号,必填}" flightno="{航班号,必填}"  plantype="{机型}" depairport="{起飞机场}" arrairport="{目的地机场}" depcity ="{起飞城市}" arrcity="{到达城市}" deptime="{起飞时间,格式:hh:ss}" arrtime="{到达时间,格式:hh:ss}" arrflag="{是否跨天,0表示不跨天,1表示跨一天}" stopflag = "{是否经停,0-无经停/1-有经停}" stopcomment="{经停说明}" transefer="{是否中转,0-非中转航班,1-中转航班}"/>
                        <train seq="{序号,必填}" trainno="{车次}"  trainmodel="{车型}" depstation="{上车站点}" arrstation="{下车站点}" deptime="{发车时间,格式:hh:ss}" arrtime="{到达时间,格式:hh:ss}" traintime ="{总时长,格式:hh:ss}" trainseat="{火车席位}" transefer="{是否中转,0-非中转火车,1-中转火车}" />
                        <bus seq="{序号,必填}" busmodel="{车型}"  seatcount="{座位数}" gathertime="{集合时间}" gatherspot="{集合地点}" deptime="{出发时间,格式:hh:ss}" arrtime="{到达时间,格式:hh:ss}" remarks="{备注}"  transefer="{是否中转,0-非中转巴士,1-中转巴士}"/>
                    </totraffic>
                    <backtraffic> <!-- 自由行或自由打包返程交通-->
                        <!-- 请保证seq唯一性,因为这个交通的顺序号,不可以重复 -->
                        <flight seq="{序号,必填}" flightno="{航班号}"  plantype="{机型}" depairport="{起飞机场}" arrairport="{目的地机场}" depcity ="{起飞城市}" arrcity="{到达城市}" deptime="{起飞时间,格式:hh:ss}" arrtime="{到达时间,格式:hh:ss}" arrflag="{是否跨天,0表示不跨天,1表示跨一天}" stopflag = "{是否经停,0-无经停/1-有经停}" stopcomment="{经停说明}" transefer="{是否中转,0-非中转航班,1-中转航班}"/>
                        <train seq="{序号,必填}" trainno="{车次}"  trainmodel="{车型}" depstation="{上车站点}" arrstation="{下车站点}" deptime="{发车时间,格式:hh:ss}" arrtime="{到达时间,格式:hh:ss}" traintime ="{总时长,格式:hh:ss}" trainseat="{火车席位}" transefer="{是否中转,0-非中转火车,1-中转火车}" />
                        <bus seq="{序号,必填}" busmodel="{车型}"  seatcount="{座位数}" gathertime="{集合时间}" gatherspot="{集合地点}" deptime="{出发时间,格式:hh:ss}" arrtime="{到达时间,格式:hh:ss}" remarks="{备注}"  transefer="{是否中转,0-非中转巴士,1-中转巴士}"/>
                    </backtraffic>
                </traffic>
            </traffics>
            <hotels><!-- 自由行或自由打包酒店元素-->
                <hotelprogram>
                    <hotel relateid="酒店关联id">
                        <seq>{酒店序号,必填}</seq>
                        <startnight>{开始入住晚数,必填}</startnight>
                        <endnight>{结束入住晚数,必填}</endnight>
                        <hotelcity>{酒店所在城市,必填}</hotelcity>
                        <hotelname>{酒店名称,必填}</hotelname>
                        <hotelmark>{酒店地标}</hotelmark>
                        <hotelenglistname>{酒店英文名称}</hotelenglistname>
                        <bookday>{入住天数}</bookday>
                        <hotelstar starname="{其他/客栈/农家院/二星或同等酒店/三星或同等酒店/四星或同等酒店/五星或同等酒店/六星或同等酒店/七星或同等酒店/八星或同等酒店}" stardesc="{住宿描述}" />    
                        <hotelgrade>{酒店档次,二星及其他/经济型/舒适型/高档型/豪华型/其他,其他说明}</hotelgrade>
                        <bedtype>{床型:大床/双床/大床或双床/其它(写其他名称)}</bedtype>
                        <roomtype>{床位数:1/2/3/4/5/6,默认2}</roomtype> <!-- 入住人数 -->
                        <roomname>{房型名称}</roomname>
                        <roomenglish>{房型英文名称}</roomenglish>
                        <address>{酒店地址}</address>
                        <website>{酒店URL}</website>
                        <image>{图片,多图片用逗号分隔}</image>
                        <introduction>{酒店介绍,必填,支持富文本}</introduction>
                        <meal breakfast="{0-不含/1-含}" lunch="{0-不含/1-含}" dinner="{0-不含/1-含}"/>
                        <network>{自费/免费/其他,其他说明}</network>
                    </hotel>
                </hotelprogram>
            </hotels>
            <additionals> <!-- 自由打包关联的附加产品 -->
                <additional>
                    <type>{0-其他/1-接送机/2-签证/3-保险,必填}</type>
                    <additiontitle>{产品标题,必填}</additiontitle>
                    <additiondesc>产品介绍</additiondesc>
                    <additionusedesc>使用说明</additionusedesc>
                </additional>
            </additionals>
            <tickets><!-- 自由行组成门票元素-->
                <ticket relateid="景区关联id" >
                    <seq>{门票序号}</seq>
                    <tickettitle>{门票名称,必填}</tickettitle>
                    <sightname>{景区名称,多景区用逗号分隔}</sightname>
                    <star>{景区级别,未评定/1A/2A/3A/4A/5A}</star>
                    <address>{景区地址}</address>
                    <opentime>{景区开放时间}</opentime>
                    <image>{图片,多图片用逗号分隔}</image>
                    <introduction>{景区/门票介绍,必填,支持富文本}</introduction>
                </ticket>
            </tickets>
             <freetripvisainfo>自由行组成签证元素,如自由行类别中有,必填,支持富文本</freetripvisainfo>
            <freetrippickupairinfo>自由行组成接送机元素,如自由行类别中有,必填,支持富文本</freetrippickupairinfo>
            <freetripotherinfo>自由行组成自定义元素,如自由行类别中有,必填,支持富文本</freetripotherinfo>
        </package>
    </packages>
    <additionals> <!-- 不是必填的 -->
        <additional id="{供应商方的id}"> <!-- 产品的附加产品 -->
            <type>{1-接送机/2-签证/3-保险/4-其他,必填}</type>
            <additiontitle>{产品标题,必填}</additiontitle>
            <additiondesc>产品介绍</additiondesc>
            <additionusedesc>使用说明</additionusedesc>
            <status>{0-不必须,1-必须}</status>
        </additional>
    </additionals>
</route>

/*因为数据库字段名与这个要求不同,所以节点名称得手动填写,但是这个数据结构自己看着有点复杂,层级较多,求大神帮忙给个解决办法,谢谢。*/

加载中
1
sxgkwei
sxgkwei

。。。你还自己组装这个玩意儿?out了吧!

虽然没做过这种事情,但在java里可以相信apache必然有xml相关的工具包,可以直接把java对象转化成xml输出吧。那么可以相信,其它语言必然也有可以使用的工具包。

那么你要做的时候,就是把数据装到对象中,把对象组装起来,然后丢给工具包toXML,就完事了。

0
Ryan-瑞恩
Ryan-瑞恩
找规律。。。。
0
chtxia
chtxia
问题不难,多点耐心,找找规律
返回顶部
顶部