JDOM 操作 XML

作者: 陈煦缘 | 来源:发表于2018-04-26 15:28 被阅读0次

XML简介

可扩展标记语言——eXtensible Markup Language

用户可以自己定义语言标记,只要有开始和闭合标签即可。

xsl装饰、修饰xml的显示结果。

dtd约束xml文件中的标记。

XML的优点:

1、xml可以让数据和标记分离。

2、异质信息互通

3、机器语言

4、用交流语言替代html装饰语言

5、简单易用

6、可以自定义、可扩展  

XML和HTML比较

比较内容HTMLXML

可扩展性不具有扩展性、标记固定是元标记语言,可以定义新标记,用户可以自定义标记

侧重点侧重于信息的表现形式为什么格式被关注侧重于结构化的描述信息,数据是什么为XML所关注

语法不严格(嵌套、配对)严格嵌套、配对,并按照DTD要求输出

可读性、可维护性难于阅读和维护结构清晰,便于阅读维护

数据本身、显示数据和显示合为一处数据与显示分离

重用性低可重用性高

JDOM操作XML

JDOM可以很方便的操作XML文档,完成XML内容的创建、修改,已经遍历Document文档中的XML元素,完成查询等。下面我们就用JDOM完成这些功能。

准备

<!-- https://mvnrepository.com/artifact/org.jdom/jdom -->
<dependency>
    <groupId>org.jdom</groupId>
    <artifactId>jdom</artifactId>
    <version>1.1.3</version>
</dependency>

XML例子

Snipaste_2018-04-26_14-57-35.png

Demo

 import com.jdd.basedata.commons.util.WinNumStringUtil;
import org.apache.commons.collections.CollectionUtils;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class Cp500Util {



    public static void main(String[] args) {

   
     Map<String, String> Kuai10winNumber = getWinNumber("http://kaijiang.500.com/static/info/kaijiang/xml/hbsyxw/{yyyyMMdd}.xml", 78);

        for (String o : Kuai10winNumber.keySet()) {
            System.out.println(o + "---------->" + Kuai10winNumber.get(o) + "---");
        }
    }


    
    private static Map<String, String> getWinNumber(String url, Integer lottery) {
        Map<String, String> map = new HashMap<>();
        String format = new SimpleDateFormat("yyyyMMdd").format(new Date());
        SAXBuilder builder = new SAXBuilder();
        url = url.replace("{yyyyMMdd}", format);
        try {
            Document document = builder.build(url);
            //获取根目录
            Element root = document.getRootElement();
            List<Element> row = root.getChildren("row");
            if (CollectionUtils.isNotEmpty(row)) {
                for (Element o : row) {
              String[] cs = o.getAttributeValue("opencode").split(",");
              
       map.put(o.getAttributeValue("expect").replace("-", "").trim(), WinNumStringUtil.sortStrings(o.getAttributeValue("opencode").toString()));
                   
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return map;
    }

}

相关文章

  • JDOM 操作 XML

    XML简介 可扩展标记语言——eXtensible Markup Language 用户可以自己定义语言标记,只要...

  • 解析XML文件的方式(四)之JDOM

    JDOM使用jdom工具包【jdom.jar,百度中可以找到】,基于树型结构解析XML。 0、要处理的XML文件 ...

  • Java学习阶段四【web基础技术】

    Xml技术; 使用jdom和dom4j来对xml文档的解析和生成操作,xml的作用和使用场合。 html/css;...

  • java面试XML相关

    对于XML这块内容的要求: 能使用jaxp来处理xml的读操作 理解dom与sax的区别 熟练掌握jdom或dom...

  • 使用JDOM方式解析XML

    一、需要导入JDOM包http://www.jdom.org/ 二、XML文件 三、开始解析 public cla...

  • XML解析工具JDOM小记

    JDOM介绍 JDOM是一种使用XML的JAVA工具包,用于快速开发XML应用程序。旨在通过Java代码来访问,操...

  • JDOM解析XML

  • JDOM解析XML文件

    使用Java解析Xml,写原生的java代码对于结构复杂的xml文件还是比较复杂的,这时,使用JDOM就是一个很好...

  • Java 6: XML - JDOM

    解析XMLDOM :(Java提供) (整个文件加载到内存中去执行解析)SAX :(Javat提供) ...

  • Java jdom解析xml文件带冒号的属性

    Java jdom解析xml文件带冒号的属性 转载请标明出处:https://dujinyang.blog.csd...

网友评论

    本文标题:JDOM 操作 XML

    本文链接:https://www.haomeiwen.com/subject/xptmlftx.html