xml解析返回list<map>

<?xml version="1.0" encoding="UTF-8"?>
<STAFF_JOB>
    <JOBS>
        <DEPT_FIRST>5</DEPT_FIRST>
        <DEPT_SECOND>8</DEPT_SECOND>
        <DEPT_THIRD>3</DEPT_THIRD>
        <DEPT_FORTH></DEPT_FORTH>
        <JOB><ID>1</ID><NAME>督训长</NAME></JOB>
        <JOB><ID>2</ID><NAME>企训</NAME></JOB>
        <JOB><ID>3</ID><NAME>督训</NAME></JOB>
    </JOBS>
    <JOBS>
        <DEPT_FIRST>5</DEPT_FIRST>
        <DEPT_SECOND>8</DEPT_SECOND>
        <DEPT_THIRD>3</DEPT_THIRD>
        <DEPT_FORTH>1</DEPT_FORTH>
        <JOB><ID>4</ID><NAME>分部经理</NAME></JOB>
        <JOB><ID>5</ID><NAME>分部副经理</NAME></JOB>
        <JOB><ID>6</ID><NAME>客户经理</NAME></JOB>
    </JOBS>
    <!-- <JOBS>
        <DEPT_FIRST>5</DEPT_FIRST>
        <DEPT_SECOND>1</DEPT_SECOND>
        <DEPT_THIRD></DEPT_THIRD>
        <DEPT_FORTH></DEPT_FORTH>
        <JOB><ID>7</ID><NAME>分公司人事部经理</NAME></JOB>
    </JOBS>
    <JOBS>
        <DEPT_FIRST>5</DEPT_FIRST>
        <DEPT_SECOND>2</DEPT_SECOND>
        <DEPT_THIRD></DEPT_THIRD>
        <DEPT_FORTH></DEPT_FORTH>
        <JOB><ID>8</ID><NAME>分公司财务部经理</NAME></JOB>
    </JOBS> -->

 </STAFF_JOB>

/***************************************************************************************黄金分割线**************************************************************************************/

List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
        try {
            String path = Utils.class.getClassLoader().getResource("")
                    .getPath();
            InputSource is = new InputSource(path + "staff_job.xml");
            SAXReader reader = new SAXReader();
            reader.setEncoding("utf-8");
            Document doc = reader.read(is);
            Element rootElt = doc.getRootElement(); // 获取根节点
            Iterator<?> eleIt = rootElt.elementIterator("JOBS");
            while (eleIt.hasNext()) {
                Element e = (Element) eleIt.next();
                Iterator<?> jobs = e.elementIterator("JOB"); // /获取子节点下的子节点
                while (jobs.hasNext()) {
                    Map<String, Object> map = new HashMap<String, Object>();
                    Element con = (Element) jobs.next();
                    String id = con.elementTextTrim("ID");
                    String name = con.elementTextTrim("NAME");
                    map.put("id", id);
                    map.put("name", name);
                    list.add(map);
                }
            }
        } catch (Exception e) {
            logger.error("查询岗位报错" + e);
        }
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值