美文网首页
如何理解JSP和MVC

如何理解JSP和MVC

作者: 咖A喱 | 来源:发表于2019-05-07 14:56 被阅读0次

JSP:

  • 定义:Java Server Page,是一种动态页面技术,是一种使用java编程语言编写类XML的tags和scriplets,来封装产生动态网页的处理逻辑。

  • 特性:JSP将网页逻辑和网页设计的显示分离,支持可重用的机遇组件的设计,使基于Web的应用程序的开发变得迅速和容易。它主要的目的是将表示逻辑从Servlet中分离出来。

  • 因此在MVC模式之前,javaweb的实现技术主要依靠于JSP。

  • 缺陷

    • 没有区分业务逻辑和展示逻辑,维护及后续开发拓展困难

    • 主要依赖于后端服务器的生成,一旦需求量过大,则对服务器负担过大

    • 代码耦合过重


当javaweb主要依靠jsp技术时,其完成流程为:

服务器接受用户请求,从而调用jsp文件,通过Servlet容器将jsp页面转换成Servlet小程序得到结果后,反馈给用户端的浏览器。

因此Servlet相当于一个控制层,在处理业务,而JSP存储了很多代码,提供给Serlect进行处理。但是JSP主要是在进行页面展示,在JSP中放置太多代码不利于维护,因此之后出现了MVC模式,将JSP中的业务代码和展示代码进行区分。


MVC:Model View Controller,一种软件设计范式。

  • Model在java中指代业务逻辑层,业务逻辑是我们在java中写的实现方法,例如需求是完成学生考试登录系统,我们会写的业务逻辑就包括如何学生需要密码登录、学生有权查看考试成绩等的业务逻辑。而在java中业务逻辑的包一般是service

  • View 是视图层,javaweb开发中此处一般用jsp来代替简单的HTML文件

  • Controller是控制层,用以根据用户事件从Model中调用相应的数据,再传给视图层以便给用户展示。

MVC示意图

基于JSP技术的web和MVC的区别

  • JSP的代码全部统一由后端服务器处理,不区分业务逻辑和展示逻辑

  • MVC通过M、V、C三个层次的划分,将业务逻辑和展示逻辑区别开,单一职责下每个层次仅仅完成自己所需要完成的部分,降低耦合性的同时,既有利于后期维护也方便开发拓展

  • 两者的主要区别在于分层,分层是为了实现“高内聚,低耦合”。采用“分而治之”的思想,把问题划分开来各个解决,易于控制,延展和分配资源。

相关文章

  • 如何理解JSP和MVC

    JSP: 定义:Java Server Page,是一种动态页面技术,是一种使用java编程语言编写类XML的ta...

  • JSP和MVC的异同

    JSP和MVC的异同 相同之处 JSP和MVC是实现过程是相似的,基本来说都会经过以下几个步骤: 接收用户的页面请...

  • 2019-01-17

    mvc演示和手动建立servet 一、jsp和servlet有什么联系和区别 servlet和我们昨天学习的jsp...

  • MVC设计模式

    JSP开发模式JSP开发模式 三层架构&MVC 的关系三层架构&MVC 的关系 使用MVC设计模式完成 学生信息管...

  • MVC、Filter、

    MVC是一种分层的设计模式,本章节从Servlet和JSP的局限性谈起,慢慢引入MVC的概念 Hello MVC ...

  • 模拟面试问题

    简历上有简历字样、项目经验全都写怎样理解 MVC、什么是AJAX、Java怎样转成JSP、CSS怎么清除浮动

  • 17.EL&JSTL

    主要内容 JSP:1. 指令2. 注释3. 内置对象 MVC开发模式 EL表达式 三层架构 JSP: ​ MVC:...

  • JavaWeb入门——MVC

    1.MVC设计模式 1.1MVC模式 1.2MVC模式示例 index.jsp WelcomeServlet.ja...

  • Spring MVC 01

    MVC:模型(dao,service)视图(jsp) 控制器(Servlet) Model(模型):包含数据和行为...

  • JSP与MVC的异同

    JSP与MVC的异同 JSP 定义: JSP(Java Server Page)是一种动态网页开发技术,部署于网络...

网友评论

      本文标题:如何理解JSP和MVC

      本文链接:https://www.haomeiwen.com/subject/xfseoqtx.html