晚上看JavaWeb,关于GenericServlet源码,偶然看见transient修饰符,猛然发现完全不解这个修饰符有何用处。
说到transient,首先得想到序列化,Serializeabe接口:对象的序列化是指把对象写到一个输出流中,对象的反序列化是从一个输入流中读取一个对象。使用transient后,对象序列化输出不会写入到流中。
序列化的步骤:
(1)创建一个对象输出流,它可以包装一个其它类型的输出流
ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream("D"//objectFile.obj"));
(2)通过对象输出流的writeObject()方法写对象
out.writeObject("hello");
out.writeObject(new Date());//保存了String和Date对象的序列化形式。
解序列化则反之,使用ObjectInputStream流