javaEE分层模型和MVC架构知识点汇总

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应用更易于维护和修改,有利于通过工程化、工具化管理应用程序代码。

相关推荐
手握风云-12 小时前
JavaEE初阶第一期:计算机是如何 “思考” 的(上)
java·java-ee
Cyanto16 小时前
Spring MVC 核心枢纽:DispatcherServlet 的深度解析与实践价值
java·spring·mvc
fuze233316 小时前
Spring MVC扩展消息转换器-->格式化时间信息
java·spring·mvc
qq_334060211 天前
springmvc
java·spring·mvc
Mr Aokey1 天前
Java UDP套接字编程:高效实时通信的实战应用与核心类解析
java·java-ee
草履虫建模2 天前
Tomcat 和 Spring MVC
java·spring boot·spring·spring cloud·tomcat·mvc·intellij-idea
小白的代码日记3 天前
Spring MVC 入门案例:从代码到原理的深度剖析
java·spring·mvc
论迹3 天前
【JavaEE】-- HTTPS
java·https·java-ee
界面开发小八哥3 天前
「Java EE开发指南」如何用MyEclipse创建一个WEB项目?(一)
java·ide·java-ee·eclipse·myeclipse
三目君4 天前
SpringMVC异步处理Servlet
java·spring·servlet·tomcat·mvc