-
<?xml version="1.0" encoding="UTF-8"?>查看全部
-
使用JDOM解析子节点的节点名和节点值: 1.调用节点的getChildren()方法获取子节点的List集合 2.使用Foreach循环遍历 2.在循环中通过getName方法获取节点名,getValue方法获取节点值查看全部
-
--------------------------应用JDOM解析子节点属性------------------------------ //通过增强for循环进行遍历子节点集合 for(Element person : personList){ System.out.print("======开始解析第" + personList.indexOf(person)+1 + "个人======"); //解析person的属性 List<Attribute> attrList = person.getAttributes();//适用于我们不知道里面有多少属性 person.getAttributeValue("id");//适用于我们知道子节点属性的名字直接获取其属性值 //遍历属性 for(Attribute attr : attrList){ //获取属性名 String attrName = attr.getName(); //获取属性值 String attrValue = attr.getValue(); System.out.print("属性名:" + ); } System.out.println("======结束解析第" + personList.indexOf(person)+1 + "个人======"); }查看全部
-
JDOM 开始解析前的准备工作 (需要导入jdom包) public static void main(String[] args) { // 进行对books.xml文件的JDOM解析 // 准备工作 // 1.创建一个SAXBuilder的对象 SAXBuilder saxBuilder = new SAXBuilder(); InputStream in; try { // 2.创建一个输入流,将xml文件加载到输入流中 in = new FileInputStream("src/res/books.xml");//放在包下可以直接用“/”来分隔 // 3.通过saxBuilder的build方法,将输入流加载到saxBuilder中 Document document = saxBuilder.build(in); // 4.通过document对象获取xml文件的根节点 Element rootElement = document.getRootElement(); // 5.获取根节点下的子节点的List集合 List<Element> bookList = rootElement.getChildren();查看全部
-
xml的SAX解析并将解析的内容及xml结构形式保存至Java对象中。 SAX解析: 1、获取一个SAXParserFactory的实例:SAXParserFactory factory = SAXParserFactory.newInstance(); 2、通过factory获取SAXParser实例:SAXParser parser = factory.newSAXParser(); 3、创建SAXParserHandler对象:SAXParserHandler handler = new SAXParserHandler(); 4、将xml文件和解析方式handler加载到SAXParser实例:parser.parse("books.xml",handler); 解析的时候,是startElement-characters-endElement , characters解析完一个属性,就到endElement,然后又解析一个属性又到endElement,最后解析完全部属性,到endElement又到startElement开始下一个节点。 ArrayList保存对象 ArrayList<Book> BookList=new ArrayList<Book>(); BookList.add(book);book=null;后继续遍历 public void startElement(String uri, String localName, String qName,Attributes attributes) throws SAXException// qName是String类型节点名称;attributes是Attributes类型的实例,属性的意思;查看全部
-
1.SAX解析XML的速度比DOM的块, 2.SAX的解析XML的解析器,需要重写startElement()方法通过qName获取节点名和characters()方法获取节点值 3.重写charaters()方法时,String(byte[] bytes,int offset,int length)的构造方法进行数组的传递 去除解析时多余空格 if(!value.trim().equals("")){ System.out.println(value); }查看全部
-
通过SAX解析XML文件步骤:<br> 1:获取一个SAXParserFactory实例<br> SAXParserFactory factory = SAXParserFactory.newInstance(); 2:通过factory的方法获取SAXParser对象 SAXParser sp = factory.newSAXParser(); 3:创建一个类继承DefaultHandler 并重写其中的一些方法进行业务处理,创建该类对象handler 用父类的startElement方法遍历开始标签,用endElement方法遍历结束标签,startDocument方法标志解析开始,endDocument方法标志解析结束 4:用SAXParser对象的parse方法接收XML文件选择传入String uri 和 Handler对象的parse方法 praser.parse("books.xml",handler);查看全部
-
1.xml(Extensible Markup Language)可扩展标记语言的主要作用: 1)主要是实现不同功能之间的连接(比如订票与 支付) 2)不同系统之间的连接 3)数据共享 2.一种定义文档格式的语言 语法结构: 1)declaration(声明) <? ?> <? xml version="1.0" encoding="UTF-8"?> 2)Tag(标记)<></> <username> 内容</username> 3)Attribute(属性) <username sex="male"></username> sex="male"即为属性 也可以把属性改为子元素 <username> 张三 <sex>male</sex> </username> 4)注释 <!-- --> eg:<!--这是一个注释的例子-->查看全部
-
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 具有性能优异、灵活性好、功能强大和极端易使用的特点 是一个开放源代码的软件查看全部
-
解析子节点的信息 Iterator itt = book.elementIterator(); while(itt.hasNext()){ Element bookchild = (Element)itt.next(); bookchild.getName(); bookchild.getStringValue(); }查看全部
-
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()查看全部
-
JDOM使用过程中JAR包的引用 我们的项目中直接配置build path指定的jar包如果是在我们PC的硬盘某个路径,那么在日后导出项目时候,项目中是没有jar包的。 我们只能在我们的项目下建立一个lib文件夹将所需jar包复制进去,再进行build path的配置即可。查看全部
-
JDOM解决乱码的方式有两种,第一种:在xml文件中改变编码方式; 第二种:将输入流包装成InputStreamReader,并改变其字符编码查看全部
-
使用JDOM解析子节点的节点名和节点值: 1,使用节点的getChildren方法获取子节点的List集合 2,使用Foreach循环遍历 3,通过getName方法获取节点名,getValue方法获取节点值查看全部
举报
0/150
提交
取消