观察者设计模式是一种行为模式,在二十三个著名的“四人组”设计模式中
访问者模式
这里我们假定一个场景,我们要解析一个只读文件到数据库。这里我们来创建三个类来模拟这个过程:
FileReader
用于读取文件中的内容Visitor
观察者接口(interface)SqlExecutor
SQL执行器,同时也是个观察者,实现了Visit0r
接口
类的结果如下所示
public class Main {
public static void main(String[] args) throws Exception {
FileReader fileReader = new FileReader(new File("D:\\a.sql"));
fileReader.accept(new SqlExecutor());
}
public interface Visitor {
void visit(String fileContent);
}
public static class SqlExecutor implements Visitor {
public void visit(String fileContent) {
System.out.println("sql execute: " + fileContent);
}