外观模式实例之文件加密
来源:互联网 发布:cmd命令查看端口号 编辑:程序博客网 时间:2024/06/10 23:37
一.实例说明:
某系统需要提供一个文件加密模块,加密流程包含三个操作,分别是读取源文件,加密,保存文件之后的文件。读取文件和保存文件使用流来实现,这三个操作相对独立,其相对独立,其业务代码封装在三个不同的类中。现在需要提供一个统一的外观加密类,用户可以直接使用该加密外观类完成文件的读取,加密和保存三个操作,而不需要与每一个类进行交互,使用外观模式设计该加密模块
二.实例类图:
代码;
package child;
class CipherMachine:
public class CipherMachine {public String encrypt(String plainText){return plainText;}}
class FileReader:
public class FileReader {public String read(String fileNameSrc){return fileNameSrc;}}
class FileWriter:
public class FileWriter {public void write(String encryptText,String fileNameDes){System.out.println(encryptText);System.out.println(fileNameDes);}}
package parent;
class EncryptFacade:
import child.CipherMachine;import child.FileReader;import child.FileWriter;public class EncryptFacade {private FileReader reader;private CipherMachine cipher;private FileWriter writer;public EncryptFacade(){reader=new FileReader();cipher=new CipherMachine();writer=new FileWriter();}public void fileEncrypt(String fileNameSrc,String fileNameDes){String plainStr=reader.read(fileNameSrc);String encryptStr=cipher.encrypt(plainStr);writer.write(encryptStr, fileNameDes);}}
package Client;:
class Client:
import parent.EncryptFacade;public class Client {public static void main(String args[]) {EncryptFacade ef=new EncryptFacade();ef.fileEncrypt("444", "555");}}
0 0
- 外观模式实例之文件加密
- 外观模式(二):外观模式应用实例(文件加密模块)
- 外观模式之读写文件
- 23种设计模式C++实例之外观模式
- 设计模式---外观模式 实例
- 设计模式之外观
- 设计模式之外观
- 设计模式 之 外观
- java 之 外观模式
- GOF之外观模式
- 设计模式之外观
- learning之外观模式
- java之外观模式
- 设计模式之外观模式
- 设计模式之外观模式
- 设计模式之外观模式
- 设计模式之外观模式
- 设计模式之外观模式
- Xcode添加Empty Application
- 【BZOJ1576】[Usaco2009 Jan]安全路经Travel【最短路树】【树链剖分】【线段树】
- Selenium+Java+Appium+TestNg环境搭建——Web自动化测试与HTML5测试(4)
- OGG-01973 Oracle GoldenGate Capture for Oracle, ext_xps.prm: The redo record indicates data loss o
- 51NOD 1262 扔球(欧拉函数)
- 外观模式实例之文件加密
- AngularJS input number 保留两位小数
- 文章标题
- 地理坐标系、大地坐标系与地图投影与重投影详解
- golang实现跨平台scp批量群发文件
- OC语言2-基础知识
- 函数调用缺少参数列表;请使用“&****Dlg::getThread”创建指向成员的指针”--多线程函数调用
- Android Service onStartCommand()介绍
- Trie树