MVC三层架构

什么是MVC: Model view Controller 模型、视图、控制器

1. 最初

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vv9WKBJe-1586441529744)(…/img/1568423664332.png)]

用户直接访问控制层,控制层就可以直接操作数据库;

在servlet中进行所有操作

servlet--CRUD-->数据库
弊端:程序十分臃肿,不利于维护  
servlet的代码中:处理请求、响应、视图跳转、处理JDBC、处理业务代码、处理逻辑代码

架构:没有什么是加一层解决不了的!
程序猿调用
|
JDBC
|
Mysql Oracle SqlServer ....

2.MVC三层架构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Kp9gEiHN-1586441529746)(…/img/1568424227281.png)]

1.我的理解

  1. 首先从view从开始,即我们所看到的网页,在这一部分只负责向用户展示数据和提供链接供用户发起请求
  2. 请求发起后,转到Controller层,Controller层接收到用户的请求后,没有逻辑的直接进行转发或者重定向,进行视图的跳转,设计逻辑的,则被Controller层转交给Mode层进行处理
  3. Mode层分为两部分,一个为Service部分,另一个为Dao部分,请求自Controller层转交给Mode层后,首先由Service部分进行处理,Service部分明确其要求后,把要求交给Dao部分去做.
  4. Dao部分负责与数据库的交互,进行增删改查等等操作。
  5. 表面上看Service部分几乎没啥用,似乎多此一举,设置Service部分还有一部分原因因为事务,我现在的理解为Service部分为大脑,Dao部分为双手,大脑理解要求以后,让双手去做;

###2.

Model

  • 业务处理 :业务逻辑(Service)
  • 数据持久层:CRUD (Dao)

View

  • 展示数据
  • 提供链接发起Servlet请求 (a,form,img…)

Controller (Servlet)

  • 接收用户的请求 :(req:请求参数、Session信息….)

  • 交给业务层处理对应的代码

  • 控制视图的跳转

    登录--->接收用户的登录请求--->处理用户的请求(获取用户登录的参数,username,password)---->交给业务层处理登录业务(判断用户名密码是否正确:事务)--->Dao层查询用户名和密码是否正确-->数据库
    

->交给业务层处理登录业务(判断用户名密码是否正确:事务)—>Dao层查询用户名和密码是否正确–>数据库


## 参考

以上内容为我观看狂神说java所做的笔记

https://www.bilibili.com/video/BV12J411M7Sj?p=42

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值