1.javaEE分层模型
javaEE的分层模型主要分为以下5层:
(1)Domain Object(领域对象)层:本层由一些列POJO(Plain Old java Object ,普通的java对象)组成,这些对象是该系统的Domain Object,通常包含各自所需实现的业务逻辑方法。
(2)DAO(Data Access Object,数据访问对象)层:本层由一系列DAO组件组成,这些DAO实现了对数据库的创建、查询、更新和删除等操作。
(3)Service(业务逻辑)层:本层由一些列的业务逻辑对象组成,这些业务逻辑对象实现了系统所需要的业务逻辑方法。
(4)Controller(控制器)层:本层由一系列控制器组成,这些控制器用于拦截用户的请求,并调用业务逻辑组件的业务逻辑方法去处理用户请求,然后根据处理结果向不同的view组件转发。
(5)view(表现)层:本层由一些列的页面及视图组件组成,负责收集用户请求,并显示处理后的结果。
**javaEE分层模型的联系:**
首先由数据库给Domain Object层提供持久化服务,然后由Domain Object层去封装DAO层,DAO层为业务逻辑层提供数据访问服务,业务逻辑层为控制器层给予逻辑支持,最终在表现层显示结果。
javaEE分层模型的应用,使得项目易于维护,简化管理,并且使用大规模和复杂的应用需求以及不断变化的业务需求,此外,分层模型还能有效提高系统并发处理能力。
2.MVC架构
在对某一项执行代码审计时,需要从其输入、处理和输出来升级漏洞、遵循MVC思想。
**MVC(Model-View-Controller)是一个架构模型,它强制性的使用应用程序的输入、处理和输出分开。使用MVC架构的程序被分成三个核心部件:模型、视图、控制器、他们各自处理自己的任务。**
以下是模型、视图、控制器的概念:
1.视图:视图是用户看到并与之交互的前端界面;
2.模型:模型表示企业数据(数据模型------数据库交互代码:dao)和业务规划及操作(业务模型------业务逻辑处理代码:service);
3.控制器:控制器表示用户的输入并调用模型和视图去完成用户的需求。
目前一个web程序的结构为:视图层、控制层、业务逻辑层、数据库访问层。
当下流行的mvc组件有:Spring MVC、JSP、Struts。
3.java架构模式中,将MVC架构模型抽象为如下结构
**view层**。view层及UI层,可采用的技术如:JSP、Structs、SpringMVC等
**Controller层**。Controller表示控制器层,可采用的技术,如Servlet/Filter,Spring等
Service层。Service层表示核心服务层,向架构上层提供服务。
DAO层。DAO层表示数据访问层,可采用技术如jdbc和ORM框架(Spring JDBC等)
Model层。Model层即表示JavaBean对象
Utilities层。Utilities层表示公共工具层。
4、MVC处理过程
MVC的处理过程也很容易理解,首先是Controller层接收用户请求,然后决定应该调用那个Model来处理,再由Model使用逻辑处理用户的请求并返回数据,最后返回的数据通过view层呈现给用户。
引入MVC架构的好处:MVC的模式使得视图层和业务层分离,以便更改View层代码时,不用重新编译Model和Controller代码,同样,当某个应用的业务流程或者业务规则发生改变时,只需改动Model层即可实现需求。此外,MVC模式使得WEB应用更易于维护和修改,有利于通过工程化、工具化管理应用程序代码。