MVC架构

 目录

 

MVC三层架构

Model 1

Model 2(MVC)

JavaBean


MVC三层架构

Model    view  Controller    模型、视图、控制器

Model 1

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

 

JSP中的内容就是html,为的就是方便写html,写页面,本质上JSP也是一个servlet,所以在它中也会不可避免的要写一些java代码,也就是脚本,为了不让其那么混乱,就增加了标签,EL表达式来尽量代替脚本。但是在写一些项目时,还是会很麻烦,原因是业务逻辑代码,与数据库交互的代码,HTML代码这些类别,风格,作用完全不同的都混杂在了一起,造成的结果是代码的维护性,可读性以及扩张性都非常差,比如要改一个需求,那么必须要把全部代码都看完,理解到,不然你可能会因为修改了一处代码,导致别的地方多处错误,这种设计模式也叫做 模式一(Model 1)

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

|
JDBC
|
Mysql Oracle SqlServer ....

 

Model 2(MVC)

Model

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

View

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

Controller (Servlet)

  • 接收用户的请求 :(req:请求参数、Session信息….)
  • 交给业务层处理对应的代码
  • 控制视图的跳转

---->登录--->接收用户的登录请求--->处理用户的请求(获取用户登录的参数,username,password)

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

将业务逻辑代码放一起,显示页面的HTML代码放一起,与数据库交互的代码放一起,这样开发思路更加清晰,维护起来也更加方便,这种就叫做MVC模式,

M:Model 模型,代表着业务逻辑代码与数据库代码,

V:View 对数据的展示代码,比如JSP页面,就是专门用来展示数据,美化页面的  

C:Controller  控制,Servlet来充当这一角色,连接着View和Model,从View中获得指令,在从model中通过业务逻辑代码获取需要的数据,然后在通过Servlet去交给View层去显示。

也就是MVC三层结构的意义

经典三层架构和MVC的关系

他们是两个毫无相关的东西,

  • 经典三层架构是一种分层思想,将开发模式分为了这三层,每个人根据自己的专长,开发不同的模块,
  • 而MVC是一种设计模式,目的是让HTML代码和业务逻辑代码分开,让代码看起来更加清晰,便于开发。
  • 硬说他们有关系的话,只能说他们有共同的点,分层,解耦。

JavaBean

实体类
JavaBean有特定的写法:

  • 必须要有一个无参构造
  • 属性必须私有化
  • 必须有对应的get/set方法;

一般用来和数据库的字段做映射 ORM;
ORM :对象关系映射

  • 表--->类
  • 字段-->属性
  • 行记录---->对象

表、

ID name

age

address
1 寇大大1 100 四川
2 寇大大2 101 绵阳
3 寇大大3 110 盐亭

 

class People{
private int id;
private String name;
private int id;
private String address;
}
class A{
new People(1,"寇大大1",100,"四川");
new People(2,"寇大大2",101,"绵阳");
new People(3,"寇大大3",110,"盐亭");
}
点击并拖拽以移动

 


posted @ 2021-06-24 09:40  寇大大  阅读(156)  评论(0)    收藏  举报