之前给大家介绍了什么是java序列化以及java为什么需要序列化的原因,那么下面就来给大家介绍一下java序列化实现的内容。
将一个java对象写到硬盘或者是传输到网路上面的其它计算机,那么这个时候,就需要自己通过java把相应的对象写成转换成字节流。
那么对于这样的操作,为什么不去使用统一的格式呢?这个时候就出现了java的概念了,在java的OutputStream类下面的子类ObjectOutputStream类就有对应的WriteObject(Object object) 其中要求对应的object实现了java的序列化的接口。
在使用tomcat开发JavaEE相关项目时,将tomcat关闭,相应的session中的对象就存储在了硬盘上面,假如,想要在tomcat重启时,从tomcat上面读取对应session中的内容,那么保存在session当中的内容就一定要实现相关的序列化操作,还有jdbc加载驱动用的就是反序列化,将字符串变为对象。
序列化操作:
public class Book implements Serializable { //序列化类:java.ioObjectOutputStream讲对象变为指定的二进制数据 private static final long serialVersionUID = 1 L; private String title; private double price; public Book(String tit, double pri) { this.title = tit; this.price = pri; } public String toString() { Map < String, String > hashMap = new HashMap < String, String > (); hashMap.put("Computer base", "6.2"); hashMap.put("Computer webpage", "45.2"); hashMap.put("Java", "105.2"); hashMap.put("Andriod", "89.2"); //第一种:使用keySet()方法遍历哈希表hashMap中的一些元素 System.out.println("通过keySet()方法遍历key和value:"); Set < String > keys = hashMap.keySet(); for (String key: keys) { String value = hashMap.get(key); System.out.println("BookName:" + key + " ,BookPrice:" + value); } return "BookName:" + this.title + " ,BookPrice:" + this.price; } }
序列化操作实现你都了解了吧,更多java程序代码例子,请继续通过奇Q工具网来进行了解吧。
推荐阅读: