java mvc模式工作流程_好程序员Java学习路线分享SpringMVC之MVC概述

原标题:好程序员Java学习路线分享SpringMVC之MVC概述

好程序员Java学习路线分享SpringMVC之MVC概述,前言:目前Web开发的主流模式是MVC,Spring提供了SpringMVC模块,支持MVC模式开发,本章我们将对MVC模式进行一个整体认识。

Web开发模式的演变

在早期的java web开发中,我们将页面显示、业务逻辑、数据操作全部放到JSP或JavaBean中实现,也就是Model1

bb1561d6a328581fd4b39fe3ffb2162a.png

这种模式的缺点是:

1、耦合性高,所有代码都在JSP中,Java和HTML混合在一起,编写困难

2、不利于分工,Java开发人员必须全部完成前端页面和Java程序开发

3、难以测试,前端页面和Java相互依赖,无法单独运行,单独测试

代码难以重用

随着时代的发展,后来出现了Servlet+JSP+JavaBean的开发模式,也就是Model2

976f9d44498504a8d64a036ec866d5b1.png

Model2也就是早期的MVC,它把页面展示、请求处理、数据操作代码分开,解决了Model1耦合性高的问题。

用户请求先交给Servlet,Servlet再调用JavaBean对数据库操作,然后将数据绑定到JSP上,将JSP返回给用户。

MVC术语

M就是Model代表模型层,负责业务逻辑和数据处理,如:数据库的CRUD。

V 就是View代表视图层,负责数据的展示和用户的交互,如:JSP页面。

C 就是Controller代表控制器层,控制器负责视图和模型之间的交互,把用户的请求分发到相应的模型,并且把模型的改变及时地反映到视图上。

MVC的发展

为了解决数据库的事务处理问题,JavaBean分为了三个部分:

bean 实体层,封装表的数据

dao 数据访问层,负责每个表的增删改查

service 业务逻辑层,负责实现事务

3d1cdc8b8f1fe1a74cefa9d06ab42327.png

MVC的优点

1.耦合性低

视图层和业务逻辑层分离,这样我们可以单独修改页面样式和java逻辑代码,而不需要考虑会对其它部分代码造成影响。

2.重用性高

当业务逻辑和视图分离后,不同的JSP页面可以重用相同的业务逻辑代码,如手机订购页面和电脑订购页面,虽然页面内容不同,但是订购的业务逻辑相同。相同的JSP页面也可以使用不同的业务逻辑,如订购的流程修改了,但是页面样式没有修改,我们只需要修改后面的业务逻辑,而不需要修改页面。

3.部署快,生命周期成本低

MVC使开发和维护用户接口的技术含量降低。使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现形式上。

4.可维护性高

分离视图层和业务逻辑层也使得WEB应用更易于维护和修改。

当然MVC也有缺点:

1、结构比较复杂,不适合中小型的应用程序。

2、每个层互相调用,关系复杂,给调试带来困难。

3、效率低

总结

MVC主要的作用是解耦,降低耦合性后,项目的维护、测试、代码复用都变得容易了,理解了MVC模式后,我们将学习SpringMVC框架。返回搜狐,查看更多

责任编辑:

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值