Servlet+JSP+JavaBean开发模型
来源:互联网 发布:枪花和涅槃 知乎 编辑:程序博客网 时间:2024/06/03 06:00
一、Servlet
Servlet是用于开发动态web资源的技术,Servlet部署在web服务器上,被动地接收web浏览器的请求,并将处理结果通过响应告知用户。
Servlet的执行过程:
1. web浏览器向web服务器提出http请求。
2. web服务器解析请求的主机,应用和web资源
3. 如果是初次访问该servlet,则创建servlet对象,并调用Init()方法,否则下一步
4. 调用servlet对象的service方法,并生成新的HttpRequest和HttpResponse对象,传入该servlet对象。在service方法中,会调用doPost()或doGet()方法,处理请求。
5. servlet返回响应信息,web服务器返回响应信息。
二、JSP
jsp 是包含HTML代码和JAVA代码的java server page.
jsp执行的是jsp的class文件,其原始的java代码继承与HttpJspBase类,而HttpJspBase类继承与HttpServlet类。
jsp拥有九大对象,其中page,HttpResponse和HTTPRequest对象已经被实例化。
三、JavaBean
JavaBean是满足某些特定书写规则并实现某些功能的JAVA类。
- 具有一个无参的构造函数
- 属性必须私有化
- 私有化的属性通过public类型的方法暴露给其它程序
JavaBean在javaweb中的主要应用是封装数据。对于遵循以上写法的JavaBean组件,其它程序可以通过反射技术实例化JavaBean对象,并且通过反射那些遵守命名规范的方法,从而获知JavaBean的属性,进而调用其属性保存数据。
JSP页面包含三个JavaBean的标签。
<jsp:useBean id="Name" class="package.class" scope="page"/><jsp:setProperty name="Name" property= "*" /> <jsp:getProperty name="Name" property="PropertyName" />
<jsp:useBean>
标签会在指定范围内指定类的指定名称的对象,如果没有找到,则实例化一个对象。 <jsp:setProperty
标签可以通过自省机制,将网页表单提交的属性值封装在javaBean的对象中。 <jsp:getProperty>
标签通过调用getter方法,获得该对象的某个属性的值。
四、Servlet+JSP+JavaBean开发模型与MVC模型
1、典型的MVC模型
- Model模型:主要用于业务逻辑的处理,对数据进行增删改查。
- View视图:展示模型数据,并提供人机交互界面,用于功能请求等。
- Controler控制器:接收用户的请求,委托模型进行处理,选择视图展示返回数据。
2、Servlet+JSP+JavaBean开发模式
在web应用中,不考虑websocket和HTML5等技术,基本上web服务器不会主动地反馈信息给web浏览器,因此,Model不会主动将模型推给视图。并且,Model的数据获取和修改都依赖数据库。因此,Servlet+JSP+JavaBean开发模型下的MVC模型如下图所示:
3、Servlet+JSP+JavaBean开发模式的缺点
- Servlet作为Controller的缺点
- 请求参数到模型的封装比较麻烦
- 控制逻辑可能比较复杂
- 选择下一个视图,严重依赖Servlet API
- 给视图传输要展示的模型数据,也需要使用Servlet API
- JSP作为View的缺点
- 很难更换视图,比如Velocity、FreeMarker
- JavaBean作为Model的缺点
- JavaBean组件负责收集封装数据,业务逻辑处理,造成JavaBean组件类很庞大
- Servlet+JSP+JavaBean开发模型
- JSP+JavaBean与JSP+Servlet+JavaBean模型
- Servlet+JSP+JavaBean开发模式
- JSP+JavaBean+Servlet技术(MVC模型)
- jsp---->JSP + Servlet + JavaBean开发模式
- JSP+JAVABEAN+SERVLET开发环境配置指南
- JSP+JAVABEAN+SERVLET开发环境配置指南
- JSP+JAVABEAN+SERVLET开发环境配置指南
- JSP+JAVABEAN+SERVLET开发环境配置指南
- JSP+JAVABEAN+SERVLET开发环境配置指南
- JSP+JAVABEAN+SERVLET开发环境配置指南
- Servlet+JSP+JavaBean开发模式(MVC)介绍
- Servlet+JSP+JavaBean开发模式(MVC)介绍
- Servlet+JSP+JavaBean开发模式(MVC)介绍
- JavaWeb开发模式二:JSP+Servlet+JavaBean
- jsp,servlet,javabean,mvc模型层-DAO,DTO案例
- Java Web框架之三层模型-JSP+JavaBean+servlet实现
- JSP总结(JSP+Servlet+JavaBean)--动态网站开发编程语言
- 利用泰勒级数sin(x)=x-x^3/3!+x^5/5!-x^7/7!+x^9/9!-... 计算sin(x)的值。要求最后一项的绝对值小于10^(-5), 并统计出此时累计了多少项?
- 测试函数执行时间的8种方法——转
- 引言,绪论 摘要,有什么区别呢?
- 从一个深度图里面导出NARF特征
- Cobar部署与测试
- Servlet+JSP+JavaBean开发模型
- 统计学习笔记(三)k近邻算法
- H264文件解析
- 纯干货:2013~2016运营之路
- OpenCV_(Laplacian Transform to find the edges)图像拉普拉斯变换查找边缘 图像识别
- python学习笔记一
- Java
- c#mvc redirecttoaction传送参数
- 深度了解AlexNet和实现