-
DOM解析会将整个XML文件加载到内存中再逐个解析查看全部
-
常用的节点类型查看全部
-
解析目的查看全部
-
1.创建DocumentBuilderFactory对象 2.创建DocumentBuilder对象 3.通过DocumentBuilder对象的parse()方法加载xml文件查看全部
-
DOM解析xml文件是:平台无关的官方解析方式 SAX解析xml文件是:基于事件驱动的解析方式查看全部
-
三种节点类型。查看全部
-
document.getElementsByTagName("");查看全部
-
JUnit是Java提供的一种进行单元测试的自动化工具。测试方法可以写在任意类中的任意位置。使用JUnit可以没有main()入口进行测试。 DOM4J在灵活性和对复杂xml的支持上都要强于DOM DOM4J的应用范围非常的广,例如在三大框架的Hibernate中是使用DOM4J的方式解析文件的。 DOM是w3c组织提供的一个官方解析方式,在一定程度上是有所应用的。 当XML文件比较大的时候,会发现DOM4J比较好用 1.JUnit:Java提供的单元测试;@Test注解;采用JUnit不需要程序入口main方法 2.性能测试结果:几kB的xml文件;建议使用DOM4J解析 DOM-33ms SAX-6ms JDOM-69ms DOM4J-45ms 工程右键build path --Add library--JUnit单元测试 --version:JUnit4 DOM:33,SAX:6 JDOM:69;DOM4J:45 DOM 有可能溢出 多使用DOM4J查看全部
-
基础方法:DOM(平台无关的官方解析方式)、SAX(基于事件驱动的解析方式) 扩展方法:JDOM、DOM4J(在基础的方法上扩展出的,只有在java中能够使用的解析方法) DOM:一次性将整个xml文件加载到内存中,形成DOM树 优点:形成了树结构,直观好理解,代码更容易编写 解析过程中树结构保留在内存中,方便修改 缺点:当xml文件较大时,对内存消耗比较大,容易影响解析性能并造成内存溢出 SAX:逐条语句判断解析 优点:采用事件驱动模式,对内存消耗比较小 适用于只需要处理xml中数据时 缺点:不易编码 很难同时访问同一个xml中的多处不同数据 JDOM:仅使用具体类而不使用接口 API大量使用了Collections类 DOM4J:JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功能 DOM4J使用接口和抽象基本类方法,是一个优秀的Java XML API 具有性能优异、灵活性好、功能强大和极端易使用的特点 是一个开放源代码的软件查看全部
-
DOM4J 解析 xml 文件 1、创建一个 SAXReader 对象 SAXReader saxReader = new SAXReader(); 2、将 xml 文件加载到 SAXReader 中,并获取 document 对象 Document document = saxReader.read(fileName); 3、通过 getRootElement() 获取根节点元素 Element employeeRoot = document.getRootElement(); 4、通过 elementIterator() 获取子节点元素,返回 Iterator 返回迭代器 Iterator eles = eleRoot.elementIterator(); 5、通过 while 遍历迭代器 while(eles.hasNest()){ Element ele = (Element)eles.next();} 6、获取属性节点类似 JDOM 解析 List<Attribute> attrs = ele.attributes(); 7、获取元素节点名、值 ele.getName() ele.getStringValue()/ele.getText() 8、获取属性节点名、值 ele.getName() ele.geValue()查看全部
-
DOM4J 解析 xml 文件 1、创建一个 SAXReader 对象 SAXReader saxReader = new SAXReader(); 2、通过SAXReader对象的read方法加载books.xml文件,获取docuemnt对象 Document document = saxReader.read(fileName); 3、通过 getRootElement() 获取根节点bookstore Element bookstore = document.getRootElement(); 4、通过 elementIterator() 获取book的迭代器 Iterator it = bookstore.elementIterator(); 5、遍历迭代器,获取根节点中的信息(书籍) while(it.hasNext()){ //获取子节点的元素 Element book = (Element)it.next();} 6、获取属性节点类似 JDOM 解析 List<Attribute> attrs = book.attributes(); 7、遍历,获取属性节点名、值 book.getName() book.geValue() 8、获取book子节点的迭代器 Iterator itt = book.elementIterator(); 8、遍历,获取元素节点名、值 book.getName() book.getStringValue()/book.getText()查看全部
-
在JDOM中存储对象 1.创建一个新的book类并将其实例化 Book bookEntity = new Book(); 2.添加节点属性值到book if(attrName.equals("id")){ personEntity.setId(attrValue); } 3.添加子节点属性值到book if (child.getName().equals("name")) { bookEntity.setName(child.getValue()); } 4.存储对象的值 用数据组List ArrayList查看全部
-
导入jar包的两种方式: 1.通过右键项目,选择build Path下的Add External Archives导入系统任意路径下的jar包。但是这种方式并没有将jar包真正导入项目中,一旦迁移,则会丢失 2.通过右键项目,新建lib文件夹,直接将jar包拷贝到lib文件夹下,然后再通过build Path将jar包导入进来查看全部
-
JDOM解析乱码处理 1.修改xml第一行的encoding属性 2.在代码中处理,应用IO流知识 //创建输入流,将XML文件加载到输入流中 InputStream in = new FileInputStream("src/book.xml"); //使用包装流InputStreamReader进行读取编码的指定 InputStreamReader isr = new InputStreamReader(in,"UTF-8");查看全部
-
DOM 解析 获取节点名、值:getNodeName() getNodeValue() getTextContent() 获取子节点:getChildNodes() 返回 NodeList 获取属性节点:getAttributes() 返回 NamedNodeMap JDOM 解析 获取节点名、值:getName() getValue() 获取子节点:getChildren() 返回 List<Element> 获取属性节点:getAttributes() 返回 List<Attribute>查看全部
举报
0/150
提交
取消