首页 > 其他分享 >三层架构以及MVC设计模式

三层架构以及MVC设计模式

时间:2022-09-25 19:01:08浏览次数:54  
标签:三层 架构 构造方法 数据库 用户 MVC 设计模式 数据 JavaBean

三层架构

三层架构为什么是三层?

过去的软件开发种,没有三层构架,只有数据后台和前端显示,这就导致项目很难维护,还有当业务逻辑复杂时,代码量就会多得多。

互联网开发的迭代优化使得三层架构出现。

使用三层架构的目的就是解耦,三层中的任何一层发生了变化都不会影响到另一层

View层

UI(表现层):主要是指与用户交互的界面。用于接收用户输入的数据和显示处理后用户需要的数据

Service层

BLL:(业务逻辑层):UI层和DAL层之间的桥梁。实现业务逻辑。业务逻辑具体包含:验证、计算、业务规则等等。

Dao层

DAL:(数据访问层):与数据库打交道。主要实现对数据的增、删、改、查。将存储在数据库中的数据提交给业务层,同时将业务层处理的数据保存到数据库。(当然这些操作都是基于UI层的。用户的需求反映给界面(UI),UI反映给BLL,BLL反映给DAL,DAL进行数据的操作,操作后再一一返回,直到将用户所需数据反馈给用户)

总结

总体来说,表现层就相当于餐厅里服务员,用于展示给顾客用户菜品信息以及提供将消息传达给厨师的入口

而业务逻辑层相当于厨师,用于将采购员买来的原材做为顾客需要的菜品然后通过服务员返还给顾客用户

最后采购员负责管理购买各类食材供厨师使用

MVC设计模式

全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写

  • Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。

    通常模型对象负责在数据库中存取数据。

  • View(视图)是应用程序中处理数据显示的部分。

    通常视图是依据模型数据创建的。

  • Controller(控制器)是应用程序中处理用户交互的部分。

    通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

典型的MVC

最典型的MVC就是:JSP+servlet+javabean,其中:

  • Model:常用javabean去实现,通过各种类来对数据库的数据进行获取,并封装在对象当中。
  • View:常用JSP来实现,通过可直接观察的JSP页面来展示我们从数据库中获取的数据。
  • Controller:常用servlet来实现,通过servlet来获取经过javabean包装过的对象(已存入数据库中的数据),然后再发送数据传输到JSP界面。

JavaBean

咖啡豆

JavaBean 是一种JAVA语言写成的可重用组件。

JavaBean类必须是具体的和公共的,并且具有无参构造。

JavaBean 通过提供符合一致性设计模式的公共方法将内部域成员属性暴露。

其他Java 类可以通过自省机制发现和操作这些JavaBean 的属性。

狭义的讲,javabean就是一个简单的类,但是这个类要有set()、get()方法,还有类中的属性都要是私有化的,方法是公有化的,还有就是要有一个无参的构造方法,如果你要设置了带参数的构造方法,那么请把无参的构造方法重新写一次,因为默认的构造方法会被带参数的构造方法覆盖掉。实体类就是JavaBean中的一种。

标签:三层,架构,构造方法,数据库,用户,MVC,设计模式,数据,JavaBean
From: https://www.cnblogs.com/Pilo-pillow/p/16728479.html

相关文章

  • SpringMVC域对象共享数据
    使用ServletAPI向request域对象共享数据@RequestMapping("/testServletAPI") publicStringtestServletAPI(HttpServletRequestrequest){ request.setAttribute("test......
  • SpringMVC加载控制与业务bean加载控制
          ......
  • SpringMVC-PostMan
     做测试的                        ......
  • SpringMvc
                              ......
  • 设计模式 -- FactoryMethod(工厂方法)
    工厂方法(FactoryMethod)定义一个用于创建对象的接口,让子类决定实例化哪个类。FactoryMethod使得一个类的实例化延迟(目的:解耦)到子类。在软件系统中,经常会面临着创建对......
  • 使用 Azure 数据资源管理器(Azure Synapse Analytics 的一部分)的 SecOps 分析平台架构
    使用Azure数据资源管理器(AzureSynapseAnalytics的一部分)的SecOps分析平台架构构建您自己的安全分析平台用例鉴于网络安全对所有组织来说都是一个大问题,我们需要......
  • 初识设计模式 - 原型模式
    简介对于大部分系统来说,创建对象包括申请内存、给成员变量赋值等过程,这些操作耗费的时间基本可以忽略不计。如果对象中的数据需要经过复杂的计算才能得到(比如排序、计算......
  • 微服务架构设计模式
    模块化是开发大型、复杂应用程序的基础微服务架构可以消除对某项技术栈的长期依赖微服务架构的弊端和问题:服务的拆分和定义是一项挑战;分布式系统带来的各种复杂性,使开......
  • 简明设计模式---桥接模式
    简述类型:结构型目的:通过抽离出多个维度相互组合(聚合)来代替继承,简化系统。话不多说,看个优化案例。优化案例现有系统中,对于画面窗口的边框有一套样式来控制是否有圆......
  • SpringCloud微服务架构
    认识微服务单体架构将业务的所有功能集中在一个项目中开发,打成一个包部署。优点:1.架构简单2.部署成本低缺点:耦合度高分布式架构根据业务功能对系统进行拆分,......