盒子
盒子
文章目录
  1. javaEE的开发模式
  2. MVC设计模式—-web开发的设计模式
  3. javaEE的三层架构

三层架构&MVC模式

javaEE的开发模式

  1. 什么是模式
    模式在开发过程中总结出的”套路”,总结出的一套约定俗成的设计模式

  2. javaEE经历的模式
    model1模式:
    技术组成:jsp+javaBean(java类,就是实体类)
    特点:在jsp页面既写java代码,又写html页面输出代码,代码冗杂
    model1的弊端:随着业务的复杂性 导致jsp页面比较混乱,所以现在不用了

model2模式:
技术组成:jsp+servlet+javaBean
特点:jsp显示页面,servlet写java代码,
model2的优点:开发中会使用各个技术中擅长的方面
servlet:擅长处理java业务代码
jsp:擅长页面的显示

MVC设计模式—-web开发的设计模式

MVC它是1980年左右由一群人提出的一种web开发的设计模式,并不是具体指javaEE的某种开发模式,而是他是一个宏观的表现,比如我们javaEE的model2开发模式,他就是属于或者符合MVC设计模式。javaEE的某种模式或是其他语言的某种模式也可以是属于MVC设计模式,它只是类似是一个”套路”,符合它的”套路”就属于这种模式。而且这个套路是用在web开发上的,比如下面我将介绍的三层架构,他就可以用到MVC,因为javaEE就是web开发级别的,而javaSE就不是,所以没有。

MVC:
M:Model——–模型
V:VIew———视图
C:Controller—控制器
比对我们model2开发模式来说:
M:Model——–模型 javaBean:封装数据
V:VIew———视图 jsp:单纯的进行页面的显示
C:Controller—控制器 servlet:获取数据—对数据进行封装—传递数据—指派显示的页面

MVC优缺点:
优点:
对于大型项目:分层,逻辑比较清楚,便于维护,扩展方便

缺点:
对于小型项目:严格遵守MVC可能就比较麻烦,代码稍多

javaEE的三层架构

三层架构只有javaEE有,javaSE没有,其他语言也没有,独属于javaEE的,javaEE是企业级开发,web开发的。
web层:与客户端交互
service层:复杂的业务处理
dao层:与数据库进行交互

开发实践时,三层架构通过包结构体现,我们设计的web包service包和dao包。

MVC与三层架构有什么关系?

看下图及例子:

MVC和三层架构

比如:客户端发送一个表单验证请求,servlet接收,与客户端交互的肯定是web层,所以servlet在web层,servlet获取user和password信息,封装到一个user对象,就是javaBeam然后传到service层做业务逻辑,service层把user中数据放到数据库就传到dao层数据操作的代码放入数据库,然后成功再逐层返回到web层,servlet就会指派jsp页面告诉客户端您注册成功。

所以MVC和三层架构不是一回事,根本没有关系,MVC是web开发的设计模式,三层架构是javaEE开发的设计模式,但是我们在三层架构的web层开发的时候我们用到了servlet,javaBean,jsp,正好不约而同的这三个技术组合到一起他就是MVC设计模式,所以在这里我们可以认为MVC属于三层架构的web层技术

最后包的划分:
使用三层架构的项目组织

联系我
扫一扫,添加JzhBetter
  • 微信扫一扫
  • qq扫一扫