java序列化与ObjectOutputStream和ObjectInputStream的实例详解
一个测试的实体类:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
public class Param implements Serializable {
private static final long serialVersionUID = 5187074869820982336L;
private Integer param1;
private String param2;
public Integer getParam1() {
return param1;
}
public void setParam1(Integer param1) {
this .param1 = param1;
}
public String getParam2() {
return param2;
}
public void setParam2(String param2) {
this .param2 = param2;
}
}
|
测试:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
public class Main {
public static void main(String[] args) throws Exception {
SerializeParam();
Param param = DeserializeParam();
System.out.println(MessageFormat.format( "param1={0},param2={1}" , param.getParam1(), param.getParam2()));
}
/**
* 将实体类序列化到本地
* @throws FileNotFoundException
* @throws IOException
*/
private static void SerializeParam() throws FileNotFoundException, IOException {
Param param = new Param();
param.setParam1( 123 );
param.setParam2( "asdf" );
ObjectOutputStream oo = new ObjectOutputStream( new FileOutputStream( new File( "E:/param.txt" ) ));
oo.writeObject(param);
System.out.println( "Person对象序列化成功!" );
oo.close();
}
/**
* 反序列化
* @return
* @throws Exception
* @throws IOException
*/
private static Param DeserializeParam() throws Exception, IOException {
ObjectInputStream ois = new ObjectInputStream( new FileInputStream( new File( "E:/param.txt" )));
Param param = (Param) ois.readObject();
System.out.println( "Person对象反序列化成功!" );
ois.close();
return param;
}
}
|
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望通过本文能帮助到大家,谢谢大家对本站的支持!
原文链接:http://hejiawangjava.iteye.com/blog/2393589