《Java与模式》: 21 专题:javaBean的“冷藏”和“解冻”

来源:互联网 发布:js中怎么验证邮箱 编辑:程序博客网 时间:2024/04/28 10:45

211

实现Serialization,Java对象与二进制流间的相互转换

串行化(Serialization)又叫“冷藏”,并行化(Deserialization)又叫“解冻”。

21.2 什么可以“冷藏”

Component,Exception,Error类及其继承的子类均可串行化;Reader,WriterI/O类均是不可串行化的。

绝对不可串行化:

(1)      一个类与本地代码由紧密关系。

(2)      对象的内部状态依赖于java虚拟机或运行环境

(3)      串行化可能有潜在安全隐患

(4)      一个类仅仅是一些静态方法的存放地,并没有任何的内部状态

21.3 Beans.instantiate()方法

可以通过ObjectOutputStreamwriteObject()方法把一个有值的TextField对象串行化到一个mytextfield.ser文件中,然后可以通过Beans.instantiate()将串行化的对象并行化回来,成为一个TextField对象。

21.4 怎样在jsp中使用Beans.Instantiate()方法

<Jsp:useBean>标识符可以指明一个被“冷冻”过的.ser文件,从而将它“解冻”。然后可以用<Jsp:getProperty>标签获得“解冻”对象的property属性。

21.5 与装饰模式的关系

原创粉丝点击