what?什么是七层?
七层就是在之前学习的三层的基础上增添外观层、工厂层(抽象工厂模式+反射+配置文件)、接口层。
why?为什么要用七层?
七层的目的是减少各层之间的数据耦合,便于后期维护。
各层的作用?
UI层:接受用户传来的数据,传给外观层,再由外观层传给B层进行相应的判断。
Facade层:解耦U层和B层,这样便减弱了两个类之间的关联,提高了代码的可维护性,这样无论U层和F层进行什么的改变只需去外观层进行相应的改动便可。
BLL层:进行逻辑判断,返回给外观层处理的信息进行判断,接收通过工厂和接口后传来D层的信息。
Factory层:通过配置文件来选取相应的数据库,创建相应数据库接口,解耦了数据库的类型。
IDAL层:D层通过创建的接口来输送B层所需要的数据,B层获取数据也要通过这个接口。接口是定义一个方法名,为了让D层去实现,接口的存在很好的做到了解耦,在B层就只需要声明一个接口,具体实现也不需要了解。
DAL层:实现接口的方法来实现用户对数据库进行增删改查的操作,与数据库进行相关操作。
Entity层:封装数据,用以传输。
各层之间的引用关系?
U层:Facade层和Entity层;
Facade层:BLL层和Entity层;
BLL层:Factory层和IDAL层和Entity层;
Factory层:IDAL层;
IDAL层:Entity层;
DAL:实现IDAL并引用Entity层
小结:
七层是人们通过优化升级来的,而并不存在真正意义上的七层,只要理解了七层的目的,就可以举一反三创造出更多的模型!