设计模式之Memento(备忘机制)

设计模式之Memento(备忘机制)

ID:38373623

大小:31.00 KB

页数:3页

时间:2019-06-11

设计模式之Memento(备忘机制)_第1页
设计模式之Memento(备忘机制)_第2页
设计模式之Memento(备忘机制)_第3页
资源描述:

《设计模式之Memento(备忘机制)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、设计模式之Memento(备忘机制)Memento定义:memento是一个保存另外一个对象内部状态拷贝的对象.这样以后就可以将该对象恢复到原先保存的状态.Memento模式相对也比较好理解,我们看下列代码:publicclassOriginator{  privateintnumber;  privateFilefile=null;  publicOriginator(){}  //创建一个Memento  publicMementogetMemento(){    returnnewMemento(this)

2、;  }  //恢复到原始值  publicvoidsetMemento(Mementom){    number=m.number;    file=m.file;  }} 我们再看看Memento类:privateclassMementoimplementsjava.io.Serializable{  privateintnumber;  privateFilefile=null;  publicMemento(Originatoro){    number=o.number;    file=o.file;

3、  }} 可见Memento中保存了Originator中的number和file的值.通过调用Originator中number和file值改变的话,通过调用setMemento()方法可以恢复.Memento模式的缺点是耗费大,如果内部状态很多,再保存一份,无意要浪费大量内存.Memento模式在Jsp+Javabean中的应用在Jsp应用中,我们通常有很多表单要求用户输入,比如用户注册,需要输入姓名和Email等,如果一些表项用户没有填写或者填写错误,我们希望在用户按"提交Submit"后,通过Jsp程序检

4、查,发现确实有未填写项目,则在该项目下红字显示警告或错误,同时,还要显示用户刚才已经输入的表项.如下图中FirstName是用户已经输入,LastName没有输入,我们则提示红字警告.:这种技术的实现,就是利用了Javabean的scope="request"或scope="session"特性,也就是Memento模式.具体示例和代码见JavaWorld的英文原文,Javabean表单输入特性参见我的另外一篇文章.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。