xstream初歩

2757 ワード

XStream is a simple library to serialize objects to XML and back again.
 
1.class Userinfo
 
package com.xmddl.xstream.demo.entry;

import java.io.Serializable;
import java.util.Date;

public class Userinfo implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private int user_id;
	private String user_name;
	private Date user_birthday;
	private double user_value;
	public Date getUser_birthday() {
		return user_birthday;
	}
	public void setUser_birthday(Date user_birthday) {
		this.user_birthday = user_birthday;
	}
	public int getUser_id() {
		return user_id;
	}
	public void setUser_id(int user_id) {
		this.user_id = user_id;
	}
	public String getUser_name() {
		return user_name;
	}
	public void setUser_name(String user_name) {
		this.user_name = user_name;
	}
	public double getUser_value() {
		return user_value;
	}
	public void setUser_value(double user_value) {
		this.user_value = user_value;
	}
}

 
2.class FactoryDemo
 
package com.xmddl.xstream.demo;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
import com.xmddl.xstream.demo.entry.Userinfo;

public class FactoryDemo {

	public void Object2Xml() {
		XStream xStream = new XStream(new DomDriver());
		xStream.alias("Userinfo", Userinfo.class);

		Userinfo user = new Userinfo();
		user.setUser_id(100);
		user.setUser_name("Xmddl369");
		user.setUser_value(25.36);
		File file = new File("d:\\userinfo.xml");
		try {
			xStream.toXML(user, new FileOutputStream(file));
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}
		System.out.println(file.length());
	}

	public void Xml2Object() {
		XStream xStream = new XStream(new DomDriver());
		xStream.alias("Userinfo", Userinfo.class);
		Userinfo user = new Userinfo();
		try {
			xStream.fromXML(new FileInputStream(new File("d:\\userinfo.xml")),
					user);
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}
		System.out.println(user.getUser_name());
	}
}

 
3.class Test
 
package com.xmddl.xstream.demo;

public class Test {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
//		try {
//			FactoryDemo fd = new FactoryDemo();
//			fd.Object2Xml();
//		} catch (Exception ex) {
//			ex.printStackTrace();
//		}
		
		try {
			FactoryDemo fd = new FactoryDemo();
			fd.Xml2Object();
		} catch (Exception ex) {
			ex.printStackTrace();
		}
	}
}