Atitit xml框架类库选型 attilax总结

 

Atitit xml框架类库选型 attilax总结

 

 

1. 1. XML类库可以分成2大类。标准的。这些类库通常接口和实现都是分开的1

2. Jdom dom4j1

2.1. 5.1. jdom1

2.2. 5.2. dom4j2

2.3. 上手度比较  jdom更加简洁些。。命名空间支持,dom4j更好。。Jdom读取不到。。2

2.3.1. Jdom范例2

2.3.2. D:\0workspace\atiplat_restapi\src\aaaPKg\dom4jReader.java3

3. 结论 dom4j推荐3

3.1. 参考资料3

 

 

1. 1. XML类库可以分成2大类。标准的。这些类库通常接口和实现都是分开的


  第一类是有标准的。这些类库通常接口和实现都是分开的, 接口通常由一些组织订立, 实现由另一些组织实现。 比如, SAX 和 DOM SAX定义的是一个基于事件的XML流解析器, 没有定义模型。 而DOM定义的是一个文档对象的模型, 却没有定义从XML文件到DOM对象的过程。 这个过程的接口是由JAXP定义的。 
  SAX的接口包是org.xml.sax, DOM的是org.w3c, JAXPjavax.xml.parsers
  
  第二类的是非标准的。 都是一些对标准不满的人另起炉灶的结果。 如,jdom, dom4j。非标准的不一定代表不流行。dom4j就是现在最流行的XML库了。

 

2. Jdom dom4j

2.1. 5.1. jdom

百度为您找到相关结果约240,000

4.JDOM生成和解析XML  

为减少DOMSAX的编码量,出现了JDOM;优点:20-80原则,极大减少了代码量。使用场合:要实现的功能简单,如解析、创建等,但在底层,JDOM还是使用SAX(最常用)、DOMXanan文档。

3.jdom ,这个也是基于DOM实现的,但其APIDOM好用,更灵活,不是标准W3C

4

 

2.2. 5.2. dom4j

 

百度为您找到相关结果约238,000

DOM4J,原来是JDOM的分支,现独立开发,处于JDOMSAX之间,即支持把XML放进内存,但可以读取时选择性删除DOM节点减少内存使用,所以也可以处理大数据XML文件,传说hibernate的配置文件也是基于dom4J(没看hibernate源码)

2.3. 上手度比较  jdom更加简洁些。。命名空间支持,dom4j更好。。Jdom读取不到。。

资料多寡,差不多

2.3.1. Jdom范例

public class deadlineLimitReader {

 

public static void main(String[] args) throws JDOMException, IOException {

// TODO Auto-generated method stub

String f="D:\\0workspace\\atiplat_restapi\\src\\aaaPKg\\flow_design_cs.xml";

SAXBuilder builder=new SAXBuilder(false);

Document doc=builder.build(f);

Element books=doc.getRootElement();

Element definitions_eles=books.getChild("definitions");

Element   process_ele=books.getChild("process");

System.out.println(process_ele.getAttributeValue("deadlineLimit"));

System.out.println("--f");

}

2.3.2. D:\0workspace\atiplat_restapi\src\aaaPKg\dom4jReader.java

 

public class dom4jReader {

 

public static void main(String[] args) throws DocumentException {

String f="D:\\0workspace\\atiplat_restapi\\src\\aaaPKg\\flow_design_cs.xml";

    SAXReader reader = new SAXReader();           

       Document   document = reader.read(new File(f));  

       Element root = document.getRootElement(); 

       Element process_element=root.element("process");  

       Element element_def=root.element("definitions"); 

       Attribute attribute=process_element.attribute("deadlineLimit");  

       System.out.println(attribute.getValue());

 

}

3. 结论 dom4j推荐

 

3.1. 参考资料

简单使用JDOM解析XML 完整版 转 - BIGBIGBIG - 博客园

使用Dom4j解析XML - redarmychen的专栏 - 博客频道 - CSDN.NET

XML解析-Dom4jjdom() - suwu150的博客 - 博客频道 - CSDN.NET

atitit.XML类库选型及object 对象bean json转换方案 - attilax的专栏 - 博客频道 - CSDN.NET.html

 

作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher

捕鸟王"Bird Catcher  kok  虔诚者Pious 宗教信仰捍卫者 Defender Of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak 万兽之王

简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴

全名::Emir Attilax Akbar bin Mahmud bin  attila bin Solomon bin adam Al Rapanui 埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 本亚当  阿尔 拉帕努伊

常用名:艾提拉(艾龙),  EMAIL:1466519819@qq.com

 

 

头衔:uke总部o2o负责人,全球网格化项目创始人,

uke交友协会会长  uke捕猎协会会长 Emir Uke部落首席大酋长,

 

uke宗教与文化融合事务部部长, uke宗教改革委员会副主席

uke制度与重大会议委员会委员长,uke保安部首席大队长,uke制度检查委员会副会长,

 

uke 首席cto   软件部门总监 技术部副总监  研发部门总监主管  产品部副经理 项目部副经理   uke科技研究院院长uke软件培训大师

 

uke波利尼西亚区大区连锁负责人 汤加王国区域负责人 uke克尔格伦群岛区连锁负责人,莱恩群岛区连锁负责人,uke布维岛和南乔治亚和南桑威奇群岛大区连锁负责人

 Uke软件标准化协会理事长理事长 Uke 数据库与存储标准化协会副会长

 

uke终身教育学校副校长   Uke医院 与医学院方面的创始人

 uec学院校长, uecip图像处理机器视觉专业系主任   uke文档检索专业系主任

Uke图像处理与机器视觉学院首席院长

Uke 户外运动协会理事长  度假村首席大村长   uke出版社编辑总编

 

转载请注明来源:attilax的专栏  ?http://www.cnblogs.com/attilax/

--Atiend  v8

 

 

posted @ 2017-04-12 22:33  attilaxAti  阅读(166)  评论(0编辑  收藏  举报