xblink轻量级序列化工具介绍

xblink是一个轻量级的通用型序列化反序列化工具;
例子
public class Student {

private String name;
private String college;
private String telephone;
private String notes;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getCollege() {
return college;
}

public void setCollege(String college) {
this.college = college;
}

public String getTelephone() {
return telephone;
}

public void setTelephone(String telephone) {
this.telephone = telephone;
}

public String getNotes() {
return notes;
}

public void setNotes(String notes) {
this.notes = notes;
}
}

import java.io.File;
import org.xblink.XBlink;

public class Students {

private Student[] student;


public Student[] getStudent() {
return student;
}

public void setStudent(Student[] student) {
this.student = student;
}

public static void main(String[] args) {
/*****************单个对象序列化******************************/
Student single = new Student();
single.setName("zhouzhouzho");
single.setCollege("12312312321");
single.setNotes("sdfsfsfsafd");
single.setTelephone("1111111111111");

XBlink.registerClassToBeUsed(Student.class);
//将该序列化后的xml输出到控制台和相应的路径文件
System.out.println("以下是单个对象序列化后输出的结果:");
System.out.println(XBlink.toXml(single));
XBlink.toXml(single, new File("d://single.xml"));
/************************************************************/

/***********************单个对象反序列化********************************/
System.out.println("以下是单个对象反序列化后输出的结果:");
String xml = XBlink.toXml(single);
Student p1 = (Student) XBlink.fromXml(xml);
System.out.println("p1name:"+p1.getName());

//从文件地址读入
Student p2 = (Student) XBlink.fromXml(new File("d://single.xml"));
System.out.println("p2name:"+p2.getName());
/*******************************************************/

/******************多个对象****************************/
Students ss = new Students();
Student s = new Student();
s.setName("zhouzhouzho");
s.setCollege("12312312321");
s.setNotes("sdfsfsfsafd");
s.setTelephone("1111111111111");

Student s1 = new Student();
s1.setName("2222222");
s1.setCollege("2222222");
s1.setNotes("222222");
s1.setTelephone("2222222");

Student s2 = new Student();
s2.setName("333333");
s2.setCollege("3333333");
s2.setNotes("333333");
s2.setTelephone("33333");

Student[] stu = new Student[] { s, s1, s2 };
ss.setStudent(stu);

XBlink.registerClassesToBeUsed(new Class[] { Students.class, Student.class });
System.out.println("以下是多个对象序列化后输出的结果:");
XBlink.toXml(stu, new File("d://555.xml"));
System.out.println(XBlink.toXml(stu));
/***************************多个对象反序列化***********************************************/
Student[] ssss = (Student[]) XBlink.fromXml(new File("d://555.xml"));
System.out.println("以下是多个对象反序列化后输出的结果:");
for (int i = 0; i < ssss.length; i++) {
System.out.println("name:" + ssss[i].getName() + " " + "college:"
+ ssss[i].getCollege() + " " + "phone:" + ssss[i].getTelephone());
}
}

}

猜你喜欢

转载自zjqyhujie-163-com.iteye.com/blog/1189462