易截截图软件、单文件、免安装、纯绿色、仅160KB

Java对象序列化和反序列化

当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,即Java对象序列号,才能在网络上传送;接收方则需要把字节序列再恢复为Java对象,即反序列化。
把Java对象转换为字节序列的过程称为对象的序列化。
把字节序列恢复为Java对象的过程称为对象的反序列化。
对象的序列化主要有两种用途:
1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中;
2) 在网络上传送对象的字节序列。
一. JDK类库中的序列化API
java.io.ObjectOutputStream代表对象输出流,它的writeObject(Object obj)方法可对参数指定的obj对象进行序列化,把得到的字节序列写到一个目标输出流中。
java.io.ObjectInputStream代表对象输入流,它的readObject()方法从一个源输入流中读取字节序列,再把它们反序列化为一个对象,并将其返回。、
只有实现了Serializable和Externalizable接口的类的对象才能被序列化。Externalizable接口继承自Serializable接口,实现Externalizable接口的类完全由自身来控制序列化的行为,而仅实现Serializable接口的类可以采用默认的序列化方式 。
对象序列化包括如下步骤:
1) 创建一个对象输出流,它可以包装一个其他类型的目标输出流,如文件输出流;
2) 通过对象输出流的writeObject()方法写对象。
对象反序列化的步骤如下:
1) 创建一个对象输入流,它可以包装一个其他类型的源输入流,如文件输入流;
2) 通过对象输入流的readObject()方法读取对象。
下面让我们来看一个对应的例子,类的内容如下:
package com.cn;
import java.io.Serializable;
public class Person implements Serializable  {
 private static final long serialVersionUID = 1L;
 
 public Person() {
  
 }
 
 public Person(String username,String password,String sex,int age) {
  this.setUsername(username);
  this.setPassword(password);
  this.setSex(sex);
  this.setAge(age);
 }
 
 private String username ;
 private String password ;
 private String sex ;
 private int age ;
 public int getAge() {
  return age;
 }
 public vo


相关文档:

java使用rocksaw和vserv tcpip实现基于ICMP的Ping功能

一:准备 www.savarese.org download
 1.  rocksaw-1.0.0-src.tar.gz
 2.  vserv-tcpip-0.9.2-src.tar.gz
二:编译源文件得到jar包 使用Ant
 1.  build vserv-tcpip-0.9.2-src
      在vserv-tcpip-0.9.2目录下面建一个tests目录,然后在cmd窗口下进入 ......

Thread Dump 和Java应用诊断(总结版)

一前提:为了方便管理在实际的生产环境一般将weblogic server启动脚本改为后台自动运行并将其输出重定向到指定文件"nohup sh startWeblogicServer.sh>ws.log",之后我们执行kill命令产生的dump信息会保存在ws.log内
二执行:在不同的系统中执行命令不同
           ......

JAVA系统和DOMINO通过LDAP集成方

LDAP是标准轻量目录访问协议(Lightweight Directory Access Protocol),通过LDAP,你可以访问目录中的用户信息,进行用户验证。DominoR5/6支持标准的LDAP v3目录服务。本文通过描述使用JNDI访问Domino目录的过程,为大家介绍如何充分利用机构中已有的Domino目录资源。本文所述的方法也适用于其他支持LDAP v3的目录服务器。 ......

关于java+flex项目欢迎页的问题

开发了个flex和java的测试项目,因为flex文件比较多,所以创建flex时候,
在WebRoot下建立了文件夹bin,用来存储html和swf文件
想在浏览器输入http://localhost:8080/project直接可以访问文件夹下的html
第一,在WebRoot下建立index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
&l ......

Java编程那些事儿67——this和super

8.8 this和super
         下面再来介绍一下this和super关键字的使用。在程序中通过使用this和super关键字,可以实现对于类内部很多内容方便的引用,也有助于理解面向对象的实现原理,更方便的理解面向对象技术的内部实现。
8.8.1 this关键字
     &n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号