public class TestSerize implements Serializable{
private String name ;
private String studNo;
/**
* @return the name
*/
public String getName() {
return name;
}
/**
* @param name the name to set
*/
public void setName(String name) {
this.name = name;
}
/**
* @return the studNo
*/
public String getStudNo() {
return studNo;
}
/**
* @param studNo the studNo to set
*/
public void setStudNo(String studNo) {
this.studNo = studNo;
}
}
// 系列化和反系列化的测试
public class Test
{
public static void main(String args[])
{
TestSerize tt = new TestSerize();
TestSerize tt_ = null;
tt.setName("yanglee");
tt.setStudNo("01");
FileOutputStream fos = null;
ObjectOutputStream oos = null;
FileInputStream fis = null;
ObjectInputStream ois = null;
try
{
fos = new FileOutputStream("D:\\test.java");
BufferedOutputStream bos = new BufferedOutputStream(fos);
oos = new ObjectOutputStream(bos);
oos.writeObject(tt);
oos.flush();
bos.flush();
fos.flush();
}
catch (IOException e)
{
//throw new JRException("Error saving file : " , e);
}
try {
fis = new FileInputStream("D:\\test.java");
BufferedInputStream bufferedIn = new BufferedInputStream(fis);
ois = new (bufferedIn);
tt_ = (TestSerize)ois.readObject();
System.out.println(tt_.getName());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
分享到:
相关推荐
这在跨网络传输对象、持久化存储对象或在不同Java虚拟机之间共享对象时非常有用。 要序列化一个对象,你需要实现Serializable接口,然后使用ObjectOutputStream的writeObject()方法: ```java try ...
序列化和反序列化在多种场景下非常有用,如持久化对象状态、在网络间传输对象、跨进程通信等。然而,它也有一些潜在的风险,比如安全问题(因为序列化的数据可能包含敏感信息)和版本兼容性问题(如果对象的类结构...
### 序列化与持久化的相同点与不同点 #### 一、持久化定义与应用场景 **持久化**是指将程序中的数据(如内存中的对象)保存到可长期存储的设备上,比如硬盘或者固态硬盘等。持久化的主要目的是确保即使在程序结束...
总的来说,ObjectInputStream和ObjectOutputStream是Java中实现对象持久化和跨进程通信的关键工具。它们允许我们保存和恢复对象的状态,同时也支持在不同JVM之间传递对象,这对于分布式系统和网络编程尤其重要。在...
当一个对象实现了`Serializable`接口,便可以通过`ObjectOutputStream`和`ObjectInputStream`流进行序列化与反序列化操作,从而将对象的状态转化为字节流存储至磁盘或其他长期存储介质。这种方法的优势在于简单易用...
本系统采用Java技术进行开发,利用了集合、序列化以及IO流等核心概念,确保数据的持久化存储和高效访问。以下是对这些关键知识点的详细阐述。 首先,**Java集合框架**是Java编程中的基石之一,它提供了多种数据结构...
ObjectInputStream和ObjectOutputStream是对象流的主要类,它们可以将Java对象转换为字节流并反之。对象必须实现Serializable接口才能被序列化。 4. 序列化(Serialization): 序列化是将对象的状态转换为字节...
在IT行业中,数据持久化是一项重要的任务,它指的是将数据保存到非易失性存储设备,以便在系统重启或关闭后仍然能够恢复。本案例中,“缓存List并写入文件持久化”的主题聚焦于如何将内存中的数据,特别是列表(List...
2. **序列化与持久化**:讨论了如何通过序列化将对象的状态保存到磁盘,以便在程序的后续运行中恢复这些状态。 3. **网络传输**:介绍如何利用序列化将对象发送到网络的另一端,这对于分布式系统和RPC(远程过程调用...
对象序列化的目标在于,通过将对象的状态转换为可存储或可传输的形式,实现对象的持久化和跨网络通信。 要实现对象序列化,Java类必须实现`Serializable`接口或`Externalizable`接口。`Serializable`接口是一个空...
【Java对象的串行化】是指将Java对象的状态转换为字节序列的过程,这使得对象可以在需要时重新创建,从而实现对象的持久化。对象串行化是Java平台的一个核心特性,它允许对象的状态被保存并能够在不同的时间点或者在...
在Java编程中,对象的序列化和反序列化是实现数据持久化的重要手段。这个实验主要涉及以下几个知识点: 1. **对象序列化**:对象序列化是将对象的状态信息转换成字节流的过程,以便存储到磁盘或者通过网络进行传输...
这在处理跨进程通信、远程方法调用(RMI)、数据存储以及需要对象状态持久化的场景中非常有用。要实现Java对象的序列化,类必须实现`java.io.Serializable`接口。虽然这个接口不包含任何需要实现的方法,但它的存在...
Java对象序列化是一种将Java对象转换为字节流的过程,以便可以存储在磁盘上、在网络上传输或在任何其他需要持久化数据的场景中使用。这个过程涉及到两个主要概念:序列化(Marshalling)和反序列化(Unmarshalling)...
1.持久化对象状态:序列化机制可以将对象的状态持久化到文件中,以便在需要时从文件中读取出来。 2.远程方法调用:序列化机制可以将对象传输到远程服务器上,以便在远程服务器上执行方法。 3. 数据交换:序列化机制...
Java反序列化是一种将已序列化的对象状态转换回对象的过程,它是Java平台中持久化数据的一种常见方式。在Java应用程序中,序列化用于将对象的状态转换为字节流,以便可以存储或在网络上传输。而反序列化则将这个字节...
Java对象的序列化和反序列化是Java编程中一项...总结,Java对象的序列化和反序列化是Java编程中的基础概念,它涉及到数据持久化、网络通信等多个方面。理解并熟练运用这一技术,能够帮助开发者更有效地管理和传递数据。
Java对象序列化与反序列化是Java编程中重要的概念,主要应用于数据持久化、网络传输以及存储等场景。本文将详细解析这两个概念及其在实际应用中的实现方式。 **一、Java对象序列化** 1. **定义**: Java对象序列化...
Java对象序列化不仅用于持久化对象状态,还能在网络传输中扮演关键角色,例如在RMI(远程方法调用)中。此外,它还可以作为缓存和备份数据的一种手段。通过实现`java.io.Serializable`接口,一个类的实例就能被序列...