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

相关推荐
A boy CDEF girl2 小时前
【JavaEE】多线程进阶(2)
java·java-ee
Easonmax2 小时前
【javaEE】多线程(基础)
java·java-ee
ChaHae-In2 小时前
JavaEE_多线程(二)
java·java-ee
Easonmax3 小时前
【javaEE】多线程(进阶)
java·java-ee
Wiktok8 小时前
ThinkPHP6用户登录系统的全过程
php·mvc
鸽鸽程序猿10 小时前
【JavaEE】SpringIoC与SpringDI
java·开发语言·java-ee
霸王龙的小胳膊16 小时前
SpringMVC-请求和响应
java·mvc
以恒11 天前
领域驱动设计(DDD)与MVC架构:理念对比与架构选择
架构·mvc
Code哈哈笑1 天前
【JavaEE】SpringBoot快速上手,探秘 Spring Boot,搭建 Java 项目的智慧脚手架
java·spring boot·java-ee
恋恋风辰1 天前
QT系列教程(17) MVC结构之Model模型介绍
开发语言·qt·mvc