JAVA高级架构师-浅析JavaWeb开发模式:Model1和Model2

【菜鸟学Java】15:JSP技术中的Model1和Model2开发模式 JavaWeb应用的结构经历了Model1和Model2两个时代,从Model1发展到Model2既是技术发展的必然,也是无数程序员的心血结晶。         Model1的原理及代码示例         在Model1模式下,整个Web应用几乎全部由JSP页面组成,JSP页面接收处理客户端请求,对请求处理后直接作出响应。用少量的JavaBean来处理数据库连接、数据库访问等操作。其流程图如 阅读详情

一、前言

在学习JavaWeb的过程中,大家都会接触到Model1和Model2,历史的发展过程是Model1 → Model2。那么它们之间有何相同之处和不同之处呢?

二、Model1

Model1使用了两种技术:JSP+JavaBean。

JAVA高级架构师-浅析JavaWeb开发模式:Model1和Model2

 

JAVA高级架构师-浅析JavaWeb开发模式:Model1和Model2

 

在Model1模式下,整个Web应用几乎全部由JSP页面组成,JSP页面接受处理客户端请求,对请求处理后直接做出响应。用少量的JavaBean来处理数据库连接、数据库访问等操作。

优点:架构简单,比较适合小型项目开发。

缺点:从工程化角度看,它的局限性非常明显;JSP的职责不单一,身兼View和Controller两种角色,将控制逻辑职和表现逻辑混杂在一起,职责过重,代码的可复用性低,不便于维护。

三、Model2

Model2使用了三种技术:JSP+Servlet+JavaBean。

1、JSP的主要作用是显示页面。

2、Servlet作为前端控制器,负责接收客户端发送的请求。它的主要作用是取得表单参数、调用业务逻辑、转向页面(转发或重定向)。

3、JavaBean的主要作用是负责处理业务逻辑、访问数据库、保存数据状态(也就是我们常说的B层、D层、实体层的集合体)。

JAVA高级架构师-浅析JavaWeb开发模式:Model1和Model2

 

JAVA高级架构师-浅析JavaWeb开发模式:Model1和Model2

 

实际上,Model2就是MVC的一个成功应用。模型(JavaBean)、视图(JSP)、控制器(Servlet)。

正如上图所示,Model2下的JSP不在承担控制器的责任,它仅仅是表现层角色,仅仅用于将结果呈现给用户。浏览器发来的请求与Servlet(控制器)交互,而Servlet负责与后台的JavaBean通信。在Model2模型下,模型(Model)由JavaBean充当,视图(View)有JSP页面充当,而控制器(Controller)则由Servlet充当。

优点:职责清晰,各司其职,互不干扰,有利于组件的重用,适合大型的Web项目。

缺点:不适合小型项目、对开发人员要求更高。

(注:图中所说的业务逻辑实际上是广义的说法,可以认为就是JavaBean)

 

Q  Q交流群: 点击 有任何问题可以加群交流   

    Java最新一线架构技术讲解请:点击 内容实用 讲解简单易懂

机器人外接 USB 音响完整配置指南 摘要:本文介绍了为机器人配置外接音响的方法。由于内置音响音量小且有散热噪音,建议使用Type-C接口外接音响。配置步骤包括:1)通过aplay -l命令查看音响端口信息;2)使用aplay命令测试音频播放;3)通过amixer命令设置音量。关键点在于正确识别音响的卡号(如card 2)和设备号(如device 0),并在命令中准确配置这些参数即可实现外接音响的正常使用。 阅读详情

相关推荐

Python批量注册脚本开发详细

开发一个Python批量注册脚本需要考虑多个方面,包括目标网站的注册流程、验证码处理、请求发送、数据存储等。以下是一个详细的开发流程和代码示例,用于实现基本的批量注册功能。

nsp202505的博客 3346

javaweb:常用的web设计模式(Model1,Model2,javaweb三层架构和mvc)和三层结构案例展示

Jsp模式介绍: SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式。 JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序,这种模式下,JavaBean用于封装业务数据,JSP即负责处理用户请求,又显示数据。 Servlet+JSP+JavaBean(MVC)模式适合开...

青红造了个大白之成长记 2137

Python实战:用nltk库5步搭建你的第一个n-gram文本生成器(附古诗生成案例)

本文详细介绍了如何使用Python的nltk库5步搭建n-gram文本生成器,并附有古诗生成案例。从环境准备、n-gram原理讲解到完整实现,逐步指导开发者掌握自然语言生成技术。特别针对中文古诗生成进行了优化,包括分词处理和韵律控制,帮助读者快速上手文本生成项目。

weixin_29090089的博客 202

浅析JavaWeb开发模式:Model1和Model2

一、前言 在学习JavaWeb的过程中,大家都会接触到Model1和Model2,历史的发展过程是Model1 → Model2。那么它们之间有何相同之处和不同之处呢? 二、Model1 Model1使用了两种技术:JSP+JavaBean。 在Model1模式下,整个Web应用几乎全部由JSP页面组成,JSP页面接受处理客户端请求,对请求处理后直接做出响应。用少量的Ja...

bai0586的博客 616

为什么我把「大模型Clouder认证:基于百炼平台构建智能体应用」作为大模型学习的第一站?从 0 到拿证全流程经验分享

【摘要】作为一个刚拿下「大模型 Clouder 认证:基于百炼平台构建智能体应用」的过来人,想在开头就和大家聊聊这个认证的特殊意义 —— 在企业加速 AI 落地的今天,能用低代码快速构建智能体应用,已经成为 AI 从业者的核心竞争力。无论是企业微信客服提效、钉钉机器人自动化办公,还是网站智能助手升级,这些场景化能力正是当下数字化转型的刚需。

davidkorhenn的博客 1527

OnlyOffice Docker部署踩坑实录:解决Nginx反向代理导致的editor.bin下载失败

本文详细解析了在Docker中部署OnlyOffice时,因Nginx反向代理配置不当导致editor.bin下载失败的常见问题。通过分析问题根源,提供了从Nginx代理配置、Docker网络设置到OnlyOffice容器内部调整的完整解决方案,并分享了实战调试技巧与性能优化建议,帮助用户彻底解决这一部署难题。

wine的专栏 523

JavaBean和MVC模式

JavaBean概念和使用 JavaBean,  咖啡豆。 JavaBean是一种开发规范,可以说是一种技术。   JavaBean就是一个普通的java类。只有符合以下规定才能称之为javabean:     1)必须提供无参数的构造方法 2)类中属性都必须私有化(private) 3)该类提供公开的getter 和 setter方法  ...

zxfly6的博客 2640

Frida+Objection保姆级教程:从环境搭建到实战Hook(含Wallbreaker插件使用)

本文提供了一份从零开始的Frida与Objection移动安全动态分析实战指南。详细讲解了Python环境配置、Frida-Server部署、Objection核心命令使用以及Wallbreaker插件安装与应用。通过实战案例演示如何Hook网络请求(如HttpURLConnection和OkHttp3),帮助安全研究人员快速掌握应用运行时行为分析与漏洞挖掘技能。

weixin_28318011的博客 101

Java进阶-12.事务

一、javaweb的设计模式 1.jsp模式介绍 SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式(model1模式),一种是Servlet+JSP+JavaBean模式(model2模式)。 1)Model1模式介绍 model1模式各部分功能分析 JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序,这种模...

闲人勿 422

【SWAT水文模型】SWAT-CUP参数率定与模型验证实战指南

本文提供了SWAT水文模型参数率定与模型验证的完整实战指南。详细介绍了如何使用SWAT-CUP工具,特别是SUFI-2算法,进行自动化参数校准,并阐述了模型验证的关键步骤以避免过度拟合。内容涵盖从工程搭建、核心参数选择、迭代优化到结果分析与常见问题排查的全流程,旨在帮助用户提升SWAT模型模拟的准确性与可靠性。

weixin_29072299的博客 499

YOLOv13涨点改进 | 全网独家创新、HyperACE改进、注意力改进篇 | CVPR 2025| 引入LRSA局部区域自注意力模块,能提升其在细节捕捉、小目标检测和长距离依赖建模方面的能力

本文提出将LRSA(局部区域自注意力)模块集成到YOLOv13中,通过局部特征交互增强细节捕捉能力、小物体检测精度和长距离依赖建模。LRSA模块采用重叠图像块处理策略,在保持计算效率的同时提升复杂背景下的检测性能。文章详细介绍了模块结构、原理优势,并提供了三种改进方案:1)在主干网络添加LRSA层;2)将关键模块替换为DSC3k2_LRSA;3)采用HyperACE_LRSA结构。配套提供了完整的PyTorch实现代码和YAML配置文件,展示了该模块如何通过局部注意力机制平衡检测精度与推理速度。

Ai缝合怪、助力小伙伴高效发论文 345

在MVC设计模式中,JavaBean的作用是。(选择1项)

A、Controller B、Model C、业务数据的封装 D、View 解答:B 转载于:https://www.cnblogs.com/borter/p/9562461.html

dengjuanshou7445的博客 2485

Debezium报错处理系列之第112篇:Cannot replicate because the master purged required binary logs. Replicate the

Debezium报错处理系列之第112篇:Cannot replicate because the master purged required binary logs.

zhengzaifeidelushang的博客 726

model java web_浅析JavaWeb开发模式:Model1和Model2

一、前言在学习JavaWeb的过程中,大家都会接触到Model1和Model2,历史的发展过程是Model1 → Model2。那么它们之间有何相同之处和不同之处呢?二、Model1Model1使用了两种技术:JSP+JavaBean。在Model1模式下,整个Web应用几乎全部由JSP页面组成,JSP页面接受处理客户端请求,对请求处理后直接做出响应。用少量的JavaBean来处理数据库连接、数据...

weixin_39796149的博客 420

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

学会使用jsp+servlet+javabean模式进行简单的业务系统开发_JAVA高级架构师-浅析JavaWeb开发模式:Model1和Model2...

欢迎关注头条号:Java小野猫一、前言在学习JavaWeb的过程中,大家都会接触到Model1和Model2,历史的发展过程是Model1 → Model2。那么它们之间有何相同之处和不同之处呢?二、Model1Model1使用了两种技术:JSP+JavaBean。在Model1模式下,整个Web应用几乎全部由JSP页面组成,JSP页面接受处理客户端请求,对请求处理后直接做出响应。用少量的Java...

weixin_39857153的博客 653

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

java model1和model2_浅析JavaWeb开发模式:Model1和Model2

一、前言在学习JavaWeb的过程中,大家都会接触到Model1和Model2,历史的发展过程是Model1 → Model2。那么它们之间有何相同之处和不同之处呢?二、Model1Model1使用了两种技术:JSP+JavaBean。 在Model1模式下,整个Web应用几乎全部由JSP页面组成,JSP页面接受处理客户端请求,对请求处理后直接做出响应。用少量的JavaBean来处理数据库连接、...

weixin_31832681的博客 551

【Java架构学习】Model1和Model2讨论

对于Model2来说它是MVC的开发模式。其实Model1也一定程度上实现了MVC,即JSP将控制层和显示层合二为一了,JavaBean为模型层;而Model2呢则把控制层Servlet单独划分出来了,专门负责业务流程的控制,接受页面请求,创建所需的JavaBean实例,并将处理后的数据返回给JSP。所以对整个调用流程而言:Servlet获取表单数据并提交,调用业务逻辑进行处理,把处理完毕的数据返回给Servlet,Servlet再调用JSP传递参数,最后JSP将结果显示给用户。所以对Model2而言适合大

不忘初心 2568

JavaWeb Model1、Model2(MVC)、三层

前言 “解耦”的思想一直是我们倡导的,但在实际项目中怎样去做?这是需要我们去好好思考的。下面以Model1、Model2、三层为切入点,对比下去了解解耦的思想。 一、Model1 使用JSP页面和JavaBean相结合的方式,由JSP页面来接收客户端请求,用JavaBean或其他服务完成业务逻辑、数据库操作和返回页面。我们这里的JavaBean主要是完成特定功能的Java类。 优点...

热心网友 1732

浅析Java开发中的Model1和Model2

在Java开发的时候,避免不了的会接触Model1和Model2,本篇博客对这两种架构进行浅析。   Model1: Model1的中心是JSP页面,JSP页面中结合业务逻辑、服务端处理过程和HTML等,这样就在JSP页面中同时实现了业务逻辑和流程控制。从而快速开发。   Model1的优缺点: 优点:简单,快速开发,适用小规模开发 缺点:业务逻辑和表

Q 1万+

JavaWeb复习10——Model1 Model2

JavaWeb复习第十弹——Model1 Model2

海滨漫步的博客 709

model java_Java中Model1和Model2

Model1和Model2是java web的两种架构模式。这两种模式各有优缺点,都有各自适合使用的场景。Model1首先,从分层的角度说,Model1模式可以看作是由两层组成:视图层和模型层。//取得参数String command=request.getParameter("command");String userId=request.getParameter("userId");//调用业...

weixin_28339967的博客 496

JSP的Model1和Model2架构模式的分析比较

JSP的Model1和Model2是sun公司为了更好地指导Web开发人员进行JavaWeb开发提出的两种架构模式,用专业术语表达就是JSP Model 1和JSP Model 2,它们的本质区别在于处理批量请求的位置不同。   一、Model1架构模式 1、Model1架构模式简介 Model1应用了JavaWeb开发当中的两种技术,即JSP和JavaBean技术,所以Model1就

CHS2065的专栏 1万+

Java - Java Web开发的Model 1和Model 2分别指的是什么?

分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net Model 1是以页面为中心的Java Web开发,使用JSP+JavaBean技术将页面显示逻辑和业务逻辑处理分开,JSP实现页面显示,JavaBean对象用来保存数据和实现业务逻辑。 Model 2是基于MVC(模型-视图-控制器,Model...

了解➔熟悉➔掌握➔精通 3万+

Javaweb07-JavaBean技术和Jsp开发模式

*JavaBean组件:**与html分离且使用Java代码封装类**JavaBean分类:**可视化JavaBean:swing 非可视化JavaBean:用于封装实体和业务逻辑。

XYX_888的博客 940

JavaWeb开发模式

1、JavaWeb开发模式 C/S:客户端 / 服务器 (胖客户端) B/S:浏览器 / 服务器 (瘦客户端) 1.1、Model1模式 JSP + JavaBean JavaBean就是一个普通类(实体bean),包含三样标准:一个无参构造、私有属性、公共的getter和setter方法 1.2 MVC开发模式(大部分企业使用这种开发

zyp1987106的博客 368
上一篇: 深入理解Java虚拟机笔记---底层原理分析与性能优化
下一篇: Java高并发缓存架构,缓存雪崩、缓存穿透之谜
程序员杨过
博客等级 码龄7年 13粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值