【person.xml】要解析的内容

<?xml version="1.0" encoding="UTF-8"?>
<students>
<student id="88888" phone="15888888888" sex="男">
<name>张三</name>
<age>18</age>
<school>清华</school>
</student>
<student id="99999" phone="15999999999" sex="女">
<name>李四</name>
<age>28</age>
<school>北大</school>
</student>
<AAAA>
<aa1>aa111</aa1>
<aa2>aa222</aa2>
</AAAA>
<BBBB></BBBB>
</students>

【Student.java】xml信息所要封装的Studnet对象

package com.Higgin.parse;

public class Student {
private String id;
private String phone;
private String sex;
private String name;
private String age;
private String school; //忽略get/set方法
@Override
public String toString() {
return "Student [id=" + id + ", phone=" + phone + ", sex=" + sex
+ ", name=" + name + ", age=" + age + ", school=" + school
+ "]";
}
}

【DemoStudent.java】将xml信息封装到Student对象

package com.Higgin.parse;

import java.io.File;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader; //解析person.xml中student数据,持久化到Student对象中
public class DemoStudent { public static void main(String[] args) throws DocumentException {
List<Student> list=new ArrayList<>(); //读取xml,封装对象
SAXReader saxReader =new SAXReader();
Document doc=saxReader.read(new File("./src/person.xml")); //读取Iterator标签
Iterator<Element> it=doc.getRootElement().elementIterator("student");
while(it.hasNext()){
Element elem=it.next();
Student student=new Student();
student.setId(elem.attributeValue("id")); //读取属性
student.setPhone(elem.attributeValue("phone"));
student.setSex(elem.attributeValue("sex"));
student.setName(elem.elementText("name")); //读取文本
student.setAge(elem.elementText("age"));
student.setSchool(elem.elementText("school"));
list.add(student);
} for(Student student : list){
System.out.println(student.toString());
}
} }

【运行结果】

05_XML的解析_02_dom4j 解析将信息封装到对象中的更多相关文章

  1. 解析XML并将信息封装到对象中

    [person.xml]要解析的内容 <?xml version="1.0" encoding="UTF-8"?> <students> ...

  2. XML解析之sax解析案例(二)使用sax解析把 xml文档封装成对象

    Demo1类: import java.io.File; import java.util.List; import javax.xml.parsers.SAXParser; import javax ...

  3. 通过反射将request中的参数封装到对象中

    import java.beans.PropertyDescriptor; import java.lang.reflect.Method; import java.text.SimpleDateFo ...

  4. sax解析xml文件,封装到对象中

    创建User.java类 public class User { private String id; private String name; private String age; private ...

  5. Java读取Txt封装到对象中——(三)

    JavaBean package bean; public class Question { private String timu; //题干 private String leixing; //类 ...

  6. FastJson解析Json,封装JavaBean对象

    获取到前端的Json,后台对应封装JavaBean对象,对其解析赋值 获取到前端的json,对其进行分析 1.获取最外层前端json对应得JavaBean (1)未分析格式的json串 (2)初步格式 ...

  7. 05_XML的解析_01_dom4j 解析

    [简述] Xml文件出了给开发者看,更多情况使用程序读取xml文件里的内容,这叫做xml解析. 根据解析方式分为:DOM解析 和 SAX解析 [解析工具] (一). 使用DOM解析原理的工具: 1.J ...

  8. 使用dom4j解析xml文件,并封装为javabean对象

    dom4j是一个java的XML api,性能优异.功能强大.易于使用.这里使用dom4j对xml文件进行解析,并完成对文件的封装. 实现对xml文件的解析,主要使用到的是dom4j中的SAXRead ...

  9. Linux c使用gumbo库解析页面表单信息(三)

    前面说了那么多,终于说到如何解析html表单信息了. 什么是表单信息呢,这里我们先要有一些概念: 如上图,这是一个QQ注册页面,注册页面当中需要我们填的空其实就是一个表单信息. 具体到html代码当中 ...

随机推荐

  1. 山东理工大学ACM平台题答案关于C语言 1543 Egypt

    Egypt Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述   A long time ago, the Egyptians fi ...

  2. Start-Process传递变量

    如果$b="aa,bb" Start-Process PowerShell.exe -Argumentlist "d:\w.ps1 $a $b $c" Star ...

  3. Jfinal极速开发微信系列教程(一)--------------Jfinal_weixin demo的使用分析

    概述: Jfinal_weixin已经出了有好一段时间了!一直在关注当中......最近工作上有需要到这个东西,所以,话了两个小时来看看这个东西,看完demo以后,豁然开朗,原理微信和一般的web项目 ...

  4. C#-设置label的字体颜色和大小

    在进行label的设置的过程中,常常会遇到需要设定label的字体颜色和字体的大小,这就需要用到label的属性:

  5. [Webpack] Use the Webpack Dashboard to Monitor Webpack Operations

    Learn how to use the new Webpack Dashboard from Formidable Labs to display a pretty, useful output f ...

  6. IOS开发-加载本地音乐

    IOS开发-加载本地音乐 $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text() ...

  7. iOS图片元数据的读写

    图片的本身就是各种图像数据的载体,包含着像素.色彩.灰度等各种数据信息,除此之外,还包含着曝光数据.日期.位置.版权等元数据(metadata). 何为图片元数据 元数据包括许多重要的信息,常用的有E ...

  8. 慎用StringEscapeUtils.escapeHtml步骤

    慎用StringEscapeUtils.escapeHtml方法[转] 推荐使用Apache commons-lang的StringUtils来增强Java字符串处理功能,也一直在项目中大量使用Str ...

  9. 可视化swing界面编辑--转载

    原文地址:http://279234058.iteye.com/blog/2200122 今天发现了一个WindowBuilder插件,功能好强大,啊哈哈,从此告别手动编辑swing界面代码,直接像V ...

  10. VIM 分割窗口

    VIM 分割窗口     *08.1*  分割窗口 打开新窗口最简单的命令如下: :split 这个命令把屏幕分解成两个窗口并把光标置于上面的窗口中: +----------------------- ...