zoukankan      html  css  js  c++  java
  • JAVA DOM4j解析XML数据到自定义javabean

    我们获取xml中的数据,一般以面向对象的思想去处理这些数据。因此,我们需要自定义类来封装解析出来的数据,以方便我们操作这些数据。

    自定义的java类,称为javabean。

    自定义Contact类代码如下:这个类是用来封装解析出来的数据的。

    package gz.itcast.a_dom4j_read;
    
    public class Contact {
    	private String id;
    	private String name;
    	private String age;
    	private String phone;
    	private String email;
    	private String qq;
    	public String getId() {
    		return id;
    	}
    	public void setId(String id) {
    		this.id = id;
    	}
    	public String getName() {
    		return name;
    	}
    	public void setName(String name) {
    		this.name = name;
    	}
    	public String getAge() {
    		return age;
    	}
    	public void setAge(String age) {
    		this.age = age;
    	}
    	public String getPhone() {
    		return phone;
    	}
    	public void setPhone(String phone) {
    		this.phone = phone;
    	}
    	public String getEmail() {
    		return email;
    	}
    	public void setEmail(String email) {
    		this.email = email;
    	}
    	public String getQq() {
    		return qq;
    	}
    	public void setQq(String qq) {
    		this.qq = qq;
    	}
    	@Override
    	public String toString() {
    		return "Contact [age=" + age + ", email=" + email + ", id=" + id
    				+ ", name=" + name + ", phone=" + phone + ", qq=" + qq + "]";
    	}
    	
    }
    

    接下来把xml文档信息封装到对象中。

    import java.io.File;
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    
    import org.dom4j.Document;
    import org.dom4j.Element;
    import org.dom4j.io.SAXReader;
    
    /**
     * 把xml文档信息封装到对象中
     * @author APPle
     *
     */
    public class Demo4 {
    
    		public static void main(String[] args) throws Exception{
    			//使用集合封装对象
    			List<Contact> list = new ArrayList<Contact>();
    			
    			//读取xml,封装对象
    			SAXReader reader = new SAXReader();
    			Document doc = reader.read(new File("./src/contact.xml"));
    			//读取contact标签
    			Iterator<Element> it = doc.getRootElement().elementIterator("contact");
    			while(it.hasNext()){
    				Element elem = it.next();
    				//创建Contact
    				Contact contact = new Contact();
    				contact.setId(elem.attributeValue("id"));
    				contact.setName(elem.elementText("name"));
    				contact.setAge(elem.elementText("age"));
    				contact.setPhone(elem.elementText("phone"));
    				contact.setEmail(elem.elementText("email"));
    				contact.setQq(elem.elementText("qq"));
    				list.add(contact);
    			}
    			
    			for (Contact contact : list) {
    				System.out.println(contact);
    			}
    			
    			
    		}
    }
    


  • 相关阅读:
    Investment_完全背包
    Recaman's Sequence_递推
    MooFest_二维树状数组
    Mobile phones_二维树状数组
    Matrix_二维树状数组
    Get Many Persimmon Trees_枚举&&二维树状数组
    树状数组基础知识
    The Cow Lineup_找规律
    [SOJ] 简单哈希
    sscanf() 函数
  • 原文地址:https://www.cnblogs.com/wanghang/p/6299749.html
Copyright © 2011-2022 走看看