请问JAVA三层架构,持久层,业务层,表现层,都该怎么理解?和MVC三层模型有啥

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问JAVA三层架构,持久层,业务层,表现层,都该怎么理解?和MVC三层模型有啥相关的知识,希望对你有一定的参考价值。

Model:数据持久层,对数据库的数据进行处理,主要就是数据库操作,常见的技术就是JDBC 、 hibernate 、 mybatis这些数据持久层操作的技术和框架。
view:表现层,就是展示给用户看的那些网页和界面,常见的就是jsp和html
Controller:业务层, 就是在Model 和 view之间进行数据交换,Servlet是最基本的,其它的框架技术 常见的就是Struts 、 SpringMVC 什么的。

本人主要是学java的,主要了解的就这么多,分三层主要就是将各个功能区分开,方便开发……
参考技术A 希望还有人关注这个问题。
我们常常提到java EE的三层或者四层结构。
四层架构:
展示层(web层)、业务逻辑层、数据访问层、信息资源层
四层架构在是开发企业应用时使用的非常经典的划分模式。
web层负责前端展示和用户请求的处理。mvc是一个设计模式,主要用户构建用户界面,目的是把展示逻辑和逻辑分离。web层通常会使用MVC模式进行构建,经常使用的mvc框架包括spring mvc,struts等,都是在web层或者展示层使用的。
业务逻辑层一般应用中会有一层service抽象,实现核心业务逻辑,事务控制也在这一层实现。
数据访问层也即dao层,重点负责数据库访问,完成持久化功能。
信息资源层主要服务资源的存储。
所以mvc和四层(三层)结构有关系,四层架构是应用的体系(分层)结构,描述了整个应用的一个完整的划分,而mvc是一个设计模式,通常会用于四层架构的展示层的构建上。希望我能讲清楚。

四种JavaEE架构简介

1. 传统三层架构

配图是一个基于MVC的三层架构, 大致可以分成表现层, 业务层和持久层

表现层负责接收请求和转发请求

业务层主要负责处理请求, 值得注意的是事务管理, 日志记录等操作通常也是封装在这层中

持久层主要负责数据库与实体之间的操作

我们可以使用框架来简化各层的开发, 例如表现层使用SpringMVC或Strut2, 持久层使用Mybatis或Hibernate, 使用Spring管理三层之间的关系

 

 

2. 集群架构

集群属于水平拓展.

传统三层架构中存在许多问题, 比如业务层中不同模块占用系统资源的比例相差太大, 导致占用系统资源, 可以使用集群解决这类问题.

在集群架构, 一般由这么一个重要的角色, 那就是反向代理服务器, 它的主要任务是实现负载均衡, 接收用户请求, 转发到目标服务器.

反向代理服务器可以使用nginx实现.

 

3. 分布式架构

多个模块完成一个功能.

每个模块都可以搭建集群 -> 高可用

 

4. 微服务架构

根据产品的业务功能模块来划分服务的种类, 这属于垂直划分.

客户端可以通过基于HTTP或RPC的方式来调用微服务, 这样做的目的是为了降低调用所产生的性能开销.

每个模块也可搭建集群 -> 高可用

三种轻量级API调用服务 - 使用service gateway和service register实现客户端与微服务之间的调用(实现通信)

SOA实现两个系统之间通信的三种方式

 

dubbo体系结构:

 

 

一个典型的基于SOA的电商项目架构:

 

以上是关于请问JAVA三层架构,持久层,业务层,表现层,都该怎么理解?和MVC三层模型有啥的主要内容,如果未能解决你的问题,请参考以下文章

面向对象——三层架构(表现层业务层持久层)

三层架构

三层架构

三层架构设计理念

java三层架构:数据访问层业务逻辑层表现层

三层架构