java的序列化和反序列化



一个标准的对象类

  
  
public class Person implements Serializable { /** * 序列化版本,如果你修改了本类,需要改变这个值 */ private static final long serialVersionUID = 1L; public Person() {} public Person(String id, String name) { super(); this.id = id; this.name = name; } private String id; private String name; 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; } }
jdk的序列化
//定义字节组输出流 ByteArrayOutputStream bos = new ByteArrayOutputStream(); //定义对象输出流 ObjectOutputStream out = new ObjectOutputStream(bos); //将对象输出流写入到字节组输出,进行序列化 out.writeObject(new Person("001", "测试员001")); byte[] bytes = bos.toByteArray();
jdk的反序列化
//字节组输入流 ByteArrayInputStream bis = new ByteArrayInputStream(bytes); //执行反序列化,从流中读取对象 ObjectInputStream in = new ObjectInputStream(bis); Person person = (Person) in.readObject();
使用Hession序列化,引入hession-4.0.7.jar,
序列化
//定义字节组输出流 ByteArrayOutputStream bos = new ByteArrayOutputStream(); //hession序列化输出 HessianOutput hout = new HessianOutput (bos); hout.writeObject(new Person("001", "测试员001")); byte[] bytes = bos.toByteArray();
反序列化
//字节组输入流 ByteArrayInputStream bis = new ByteArrayInputStream(bytes); //hession反序列化读取对象 HessionInput in = new HessionInput(is);
Person person = (Person) in.readObject();
一个标准的对象类

   
   
public class Person implements Serializable { /** * 序列化版本,如果你修改了本类,需要改变这个值 */ private static final long serialVersionUID = 1L; public Person() {} public Person(String id, String name) { super(); this.id = id; this.name = name; } private String id; private String name; 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; } }
jdk的序列化
//定义字节组输出流 ByteArrayOutputStream bos = new ByteArrayOutputStream(); //定义对象输出流 ObjectOutputStream out = new ObjectOutputStream(bos); //将对象输出流写入到字节组输出,进行序列化 out.writeObject(new Person("001", "测试员001")); byte[] bytes = bos.toByteArray();
jdk的反序列化
//字节组输入流 ByteArrayInputStream bis = new ByteArrayInputStream(bytes); //执行反序列化,从流中读取对象 ObjectInputStream in = new ObjectInputStream(bis); Person person = (Person) in.readObject();
使用Hession序列化,引入hession-4.0.7.jar,
序列化
//定义字节组输出流 ByteArrayOutputStream bos = new ByteArrayOutputStream(); //hession序列化输出 HessianOutput hout = new HessianOutput (bos); hout.writeObject(new Person("001", "测试员001")); byte[] bytes = bos.toByteArray();
反序列化
//字节组输入流 ByteArrayInputStream bis = new ByteArrayInputStream(bytes); //hession反序列化读取对象 HessionInput in = new HessionInput(is);
Person person = (Person) in.readObject();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值