JavaWeb作业:JSP开发模型
发布日期:2022-03-08 21:50:49 浏览次数:2 分类:技术文章

本文共 2490 字,大约阅读时间需要 8 分钟。

JSP开发模型

概念

JSP的开发模型即JSP Model,在Web开发中,为了更方便地使用JSP技术,Sun公司为JSP技术提供了两种开发模型:JSP Model1和JSP Model2。JSP Model1简单轻便,适合小型Web项目的快速开发;JSP Model2模型是在JSP Model1的基础上提出的,它提供了更清晰的代码分层,更适用于多人合作开发的大型Web项目,实际开发过程中可以根据项目需求,选择合适的模型。

1.1JSP Model1
采用JSP+JavaBean的技术,将页面显示和业务逻辑分开。其中,JSP实现流程控制和页面显示,JavaBean对象封装数据和业务逻辑。JSP Model1的工作原理如下图所示。

JSP开发模式(四种模式)

单纯的JSP编程

在 JSP 编程模式下,通过应用 JSP 中的脚本标志,可以直接在 JSP 页面中实现各种功能。虽然这种模式很容易实现,但是,其缺点也非常明显。因为将大部分的 Java 代码与 HTML 代码混淆在一起,会给程序的维护和调试带来很多困难,而且难以理清完整的程序结构。

这就好比规划管理一个大型企业,如果将负责不同任务的所有员工都安排在一起工作,势必会造成公司秩序混乱、不易管理等许多隐患。所以说,单纯的 JSP 页面编程模式是无法应用到大型、中型甚至小型的 JSP Web 应用程序开发中的。

SP+JavaBean 编程

JSP+JavaBean 编程模式是 JSP 程序开发经典设计模式之一,适合小型或中型网站的开发。利用 JavaBean 技术,可以很容易地完成一些业务逻辑上的操作,例如数据库的连接、用户登录与注销等。

JavaBean 是一个遵循了一定规则的 Java 类,在程序的开发中,将要进行的业务逻辑封装到这个类中,在 JSP 页面中,通过动作标签来调用这个类,从而执行这个业务逻辑。此时的 JSP 除了负责部分流程的控制外,主要用来进行页面的显示,而 JavaBean 则负责业务逻辑的处理。

可以看出,JSP+JavaBean 设计模式具有一个比较清晰的程序结构,在 JSP 技术的起步阶段,该模式曾被广泛应用。

用户通过客户端浏览器请求服务器。
服务器接收用户请求后调用 JSP 页面。
在 JSP 页面中调用 JavaBean。
在 JavaBean 中连接及操作数据库,或实现其他业务逻辑。
JavaBean 将执行的结果返回 JSP+ 页面。
服务器读取 JSP 页面中的内容(将页面中的静态内容与动态内容相结合)。
服务器将最终的结果返回给客户端浏览器进行显示。

JSP+JavaBean+Servlet 编程

JSP+JavaBean 设计模式虽然已经对网站的业务逻辑和显示页面进行了分离,但这种模式下的 JSP 不但要控制程序中的大部分流程,而且还要负责页面的显示,所以仍然不是一种理想的设计模式。

在 JSP+JavaBean 设计模式的基础上加入 Servlet 来实现程序中的控制层,是一个很好的选择。在这种模式中,由 Servlet 来执行业务逻辑并负责程序的流程控制,JavaBean 组件实现业务逻辑,充当模型的角色,JSP 用于页面的显示。可以看出,这种模式使得程序中的层次关系更明显,各组件的分工也非常明确。图 2 表示该模式对客户端的请求进行处理的过程。

MVC 模式

MVC(Model-View-Controller,模型-视图-控制器)是一种程序设计概念,它同时适用于简单的和复杂的程序。使用该模式,可将待开发的应用程序分解为三个独立的部分:模型、视图和控制器。

提出这种设计模式主要是因为应用程序中用来完成任务的代码(模型,也称为“业务逻辑”)通常是程序中相对稳定的部分,并且会被重复使用,而程序与用户进行交互的页面(视图),却是经常改变的。

如果因需要更新页面而不得不对业务逻辑代码进行改动,或者要在不同的模块中应用相同的功能时重复地编写业务逻辑代码,不仅会降低整体程序开发的进程,而且会使程序变得难以维护。因此,将业务逻辑代码与外观呈现分离,将会更容易地根据需求的改变来改进程序

MVC设计模式

MVC框架

经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。

简介

MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。模型-视图-控制器(MVC)是Xerox PARC在二十世纪八十年代为编程语言Smalltalk-80发明的一种软件设计模式,已被广泛使用。后来被推荐为Oracle旗下Sun公司Java EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。模型-视图-控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。

MVC 编程模式

V即View视图是指用户看到并与之交互的界面。比如由html元素组成的网页界面,或者软件的客户端界面。MVC的好处之一在于它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,它只是作为一种输出数据并允许用户操作的方式。

M即model模型是指模型表示业务规则。在MVC的三个部件中,模型拥有最多的处理任务。被模型返回的数据是中立的,模型与数据格式无关,这样一个模型能为多个视图提供数据,由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。
C即controller控制器是指控制器接受用户的输入并调用模型和视图去完成用户的需求,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。

转载地址:https://blog.csdn.net/m0_55680096/article/details/122330706 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:2021-03-04
下一篇:2021-03-05

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年03月17日 02时40分35秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

node静态服务器优缺点_Node —— BFF 2021-06-24
新风系统风速推荐表_PE管还是PVC管?现场评测新风系统两种管道对比 2021-06-24
华为社招嵌入式软件面试_嵌入式软件面试那点事 2021-06-24
心电图多少为正常范围_一个人的正常尿酸是多少,不管体重多少,不超过这个范围都算正常... 2021-06-24
两个集合相等的例题_人教A版高中数学必修一1.1.集合间的基本关系优质课公开课课件、教案... 2021-06-24
用流密码实现加密java语言_使用java的流密码 2021-06-24
合唱队形java_动态规划之合唱队形问题 2021-06-24
java变量怎么进行百分比_在Java中显示百分比 2021-06-24
java 设置pdf页面大小_Java PDF页面设置——页面大小、页边距、纸张方向、页面旋转... 2021-06-24
cmd mysql 数据分析_小白学数据分析--与MySQL有关的小知识 2021-06-24
java完成九宫格数独_简单实现java数独游戏 2021-06-24
php 安装zip,php7.4安装zip扩展 2021-06-24
php7 gitbook,php7性能分析扩展工具xhprof 2021-06-24
java wav 切割_java切割音频文件 2021-06-24
java获取服务器编码_使用Java代码获取服务器性能信息及局域网内主机名 2021-06-24
mysql 导出json_如何将MySQL数据库导出到JSON? 2021-06-24
嵌入式Linux咨询公司,Technical support and consulting 2021-06-24
linux 离线安装中文字库,centos7 离线安装字体fontconfig 2021-06-24
可以使用鸿蒙系统的55款手机,华为鸿蒙系统首批适配机型即将公布,共有55款产品可升级搭载... 2021-06-24
鸿蒙系统chromeos2.0,【华为鸿蒙系统】鸿蒙OS 2.0 适配计划曝光 2021-06-24