Java对象的序列化和反序列化
对象的序列化是指将对象转换为字节序列的过程
对象的反序列化是指将字节序列恢复对象的过程
主要有两种用途:
1、把对象的字节序列永久地保存在硬盘上,通常放在一个文件中。
2、在网络上传输对象的字节序列。
Person类
package com.zyz; import java.io.Serializable; /**
* Created by Administrator on 16-9-25.
*/
public class Person implements Serializable {
private String name;
private int age;
private String sex; public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public String getSex() {
return sex;
} public void setSex(String sex) {
this.sex = sex;
}
}
测试类
package com.zyz; import java.io.*;
import java.text.MessageFormat; /**
* Created by Administrator on 16-9-25.
*/
public class TestObjSerializeAndDeserialize {
public static void main(String[] args){
// try {
// SerializePerson();
// } catch (IOException e) {
// e.printStackTrace();
// }
try {
SerializePerson();
Person person=DeserializPerson();
System.out.println(MessageFormat.format("姓名:{0},年龄:{1},性别:{2}",person.getName(),person.getAge(),person.getSex()));
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
} private static void SerializePerson() throws IOException {
Person person=new Person();
person.setName("乔大爷");
person.setAge(40);
person.setSex("男");
ObjectOutputStream oo=new ObjectOutputStream(new FileOutputStream(new File("d:/person.txt")));
oo.writeObject(person);
System.out.println("文件序列化成功!");
oo.close();
} private static Person DeserializPerson() throws IOException, ClassNotFoundException {
ObjectInputStream ois=new ObjectInputStream(new FileInputStream(new File("d:/person.txt")));
Person person=(Person)ois.readObject();
System.out.println("Person对象反序列化成功!");
return person;
} }
Java对象的序列化和反序列化的更多相关文章
- Java对象的序列化与反序列化
序列化与反序列化 序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程.一般将一个对象存储至一个储存媒介,例如档案或是记亿体缓冲等.在网络传输过程中,可以是字节或是 ...
- Java对象的序列化和反序列化[转]
Java基础学习总结--Java对象的序列化和反序列化 一.序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化.把字节序列恢复为对象的过程称为对象的反序列化. 对象的序列化主要有两种用 ...
- Java对象的序列化与反序列化-Json篇
说到Java对象的序列化与反序列化,我们首先想到的应该是Java的Serializable接口,这玩意在两个系统之间的DTO对象里面可能会用到,用于系统之间的数据传输.或者在RPC(远程方法调用)时可 ...
- 一文带你全面了解java对象的序列化和反序列化
摘要:这篇文章主要给大家介绍了关于java中对象的序列化与反序列化的相关内容,文中通过详细示例代码介绍,希望能对大家有所帮助. 本文分享自华为云社区<java中什么是序列化和反序列化?>, ...
- Java基础学习总结——Java对象的序列化和反序列化
一.序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化. 把字节序列恢复为对象的过程称为对象的反序列化. 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存 ...
- java对象的序列化与反序列化使用
1.Java序列化与反序列化 Java序列化是指把Java对象转换为字节序列的过程:而Java反序列化是指把字节序列恢复为Java对象的过程. 2.为什么需要序列化与反序列化 我们知道,当两个进程进 ...
- Java对象的序列化和反序列化实践
2013-12-20 14:58 对象序列化的目标是将对象保存在磁盘中,或者允许在网络中直接传输对象.对象序列化机制允许把内存中的Java对象转换成平台无关的二进制流,从而允许把这种二进制流持久的保存 ...
- Java基础学习总结--Java对象的序列化和反序列化
一.序列化和反序列化的概念 把对象转换成字节序列的过程称之为对象的序列化 把字节序列恢复为对象的过程称之为对象的反序列化 对象序列化的主要用途: 1)把对象的字节序列永久的保存到硬盘上,通常放在一个文 ...
- 深入理解Java对象的序列化与反序列化的应用
当两个进程在进行远程通信时,彼此可以发送各种类型的数据.无论是何种类型的数据,都会以二进制序列的形式在网络上传送.发送方需要把这个Java对象转换为字节序列,才能在网络上传送:接收方则需要把字节序列再 ...
随机推荐
- Maven(二)使用eclipse创建maven多模块项目
maven作为一种自动化构建工具,在现在的企业应用开发中运用非常普遍. 企业项目一般都比较大,多采用maven管理的多模块项目,下面直接上创建步骤 一.创建一个maven项目
- 3.2 ARM指令分类学习
1 算术移位寄存器和逻辑指令 1.1 mov 传送(Move) Mov {条件} {S} <dest>, <op_1> MOV从另一个寄存器.被移位的寄存器.或者一个立即数装载 ...
- Jmeter分布式测试
随着并发量的增大,一台机器就不能满足需求了,所以我们采用分布式(Master-Slaver)的方案去执行高并发的测试 注意事项: Master机器一般我们不执测试,所以可以拿一台配置差些的机器,主要用 ...
- MCV之行为
在Controller中的方法都称为行为,所以的公共方法都可以在浏览器中调用,返回值为:ActionResult的类型或其子类,这个类为抽象类,所以这为抽象编程,方法的结果返回为直接或间接继承自Act ...
- 简化注解shh框架
找到上次我们搭建的SSH框架 浏览一下原始的applicationContext.xml文件中的部分配置. <bean id="myIndexAction" class=&q ...
- TCP应用编程
TCP是Transmission Control Protocol(传输控制协议)的简称,是TCP/IP体系中面向连接的运输层协议,在网络中提供全双工的和可靠的服务. TCP协议最主要的特点是: 1) ...
- android avd sdk root
网上的方式都失败了... 网上的方式据说是 用于 2.0 左右版本的. 而我们现在主流都用的是 4.0 以上的. 这个http://quantoubao.blog.163.com/blog/stat ...
- 关于asp.net 开发的小技巧—让传值对象化
前端:前端 定义一个对象, 传值时实例此对象,序列化成json字符串 代码如下: 定义js对象: ///定义一个查询条件对象 var SearchCondition=function(){ this. ...
- 38、重新复习javascript之三
前言 虽然吧,每天都没有什么太有技术性的工作者,但是技术不能丢,希望也要有,人如果没有希望那不就和咸鱼一样了吗?小伙加油吧 1.html与javascript结合 <!DOCTYPE html ...
- visual studio code(vscode) 调试php(转)
原文链接:http://www.cnblogs.com/CLR010/p/5276077.html visual studio code(vscode) 调试php 1.下载vscode (vis ...