本章重点:
1.如何在JSP页面中引用JavaBean
2.正确理解JavaBean
3.JSP开发模式1
4.JSP开饭模式2
1.JSP页面中的JavaBean
使用理由:由于在JSP页面中,如果要引用一个类,必须要构建大量的脚本块。因此让
JSP页面变得很难读懂,所以,为了减少JSP页面中的脚本块使用。我们使用JavaBean引入。
-JavaBean引入动作<jsp:userBean>:
如果要在JSP页面使用标准的动作与JavaBean实例通讯,首先必须使用该标签动作实例化
和使用bean。语法格式为:
<jsp:useBean id="beanName" scope="page|request|session|application" class="BeanClass" />
该动作的5个属性:
-id:代表bean实例化的名字,我们可以在接下来的过程中利用该名字调用bean中的方法。
-class: bean的包名类名,如:com.lovobook.MyBean
-scope:bean的生存作用域,有以下4个可选值。
-page:bean的实例可以在当前页面使用,页面完成后就被删除
-request:bean的实例可以保存在request作用域中,共用一个request的多个JSP都可用
-session:bean的实例保存在session作用域中,用户整个会话周期内都可使用
-application:对当前应用的所有用户都可见该实例。
<jsp:useBean id="myBean" scope="request" class="com.lovobook.CustomerBean" />
以上红色动作转化为Servlet代码:
CustomerBean myBean = (CustomerBean) request.getAttribute("myBean");
if(myBean == null){
myBean = new CustomerBean();
request.setAttribute("myBean",myBean);
}
-JavaBean获得属性动作<jsp:getProperty>与设置属性动作<jsp:setProperty>
-<jsp:getProperty name="beanName" property="propertyname" />
这里name是指在<jsp:useBean>中指定的id名,propertyname指返回JavaBean中相对应的属性名
例:<jsp:useBean id="myBean" class="com.lovobook.CustomerBean" scope="page" />
<p>Name: <jsp:getProperty name="myBean" property="name" />
-设置属性动作有四种形式的语法:
-<jsp:setProperty name="BeanName" property="属性名" />
(该方法要求property必须和表单中的name对应。)
-<jsp:setProperty name="BeanName" property="属性名" param="参数名" />
(该方法是从表单中得到param参数的值,再放入property的值中去)
-<jsp:setProperty name="BeanName" property="属性名" value="属性值" />
(最容易理解的方法,property就是需要设置的Bean的属性,vlaue是需要设置的值)
-<jsp:setProperty name="BeanName" property="*" />
(最后一种方法很好用,只要在表单中设置name与Bean中设置的属性名一样,就可直接
获取由表单中发送过来的属性值并且设置进Bean的对应属性中去。)
2.JSP开发模式1:
特点: 利用JavaBean来做开发就是JSP开发模式1的特点。他最大的特点就是将一次请求的响应过程完全
交给一个JSP页面负责,最典型的应用就是让创建表单的JSP页面同时负责处理该表单的请求,也就是
说JSP页面既要负责输出创建表单的HTML代码,又要处理表单中数据。
缺点: 模式1虽然实现了某种程度的页面显示与业务逻辑分离,但是,JSP除了要负责页面显示外,还要
负责处理请求和控制业务流程,即根据不同的请求信息调用不同程序代码,没有做到完全显示控制分离
当要处理非常复杂的业务流程时,JSP页面中内嵌的Java代码就很多,给开发和维护带来极大困难。
所以,一般模式1只用在系统规模小,业务流程简单的应用程序系统中,业务复杂的大型项目,一般
都不会采用模式1.
3.JSP开发模式2:
特点: MVC架构模式。
关于MVC架构,我想都不陌生了,之前讲到了很多关于MVC架构的知识。
在Web开发中使用MVC架构能够很好的利用分层的思想来简化开发和后期维护难度。
1.开发步骤:
-定义一系列Bean 来表示数据
-使用一个Servlet来处理请求
-在Servlet中填充Bean
-在Servlet中将Bean存储到请求,会话,或者Servlet上下文中。
-将请求转发到JSP页面中。
-在JSP页面中,从Bean中提取数据。
2.在MVC模式中使用过滤器:
过滤器是Web开发中非常强大的一层。
首先,如果我们要在一个Servlet中进行业务处理和判断的话。如果我们要修改项目,就不得修改Servlet
中的代码,这样,造成了硬编码。所以,我们可以用过滤器解决硬编码。
采用过滤器作为控制器的特点:
1.不需要一个特殊的参数来通知过滤器到底请求的是哪个视图。
2.提供了一个清晰的方法来增加一个新视图。
分享到:
相关推荐
精讲java web的web开发模式,对于初学java web的人有很大用
基于AJAX的异步Web开发模式.pdf
基于AJAX的Web开发模式的研究.pdf
基于AJAX的异步Web开发模式 (1).pdf
App原生、混合、纯WEB开发模式的优劣分析.pdf
Servlet+JSP+JavaBean开发模式(MVC)开发用户登录注册程序
需要先学习完正则表达式和ES6 学会基础再多去写写项目加深对知识层面的加强
提供了通用Web开发模式的高度抽象,提供了频繁进行的编程作业的快速解决方法,以及为“如何解决问 题”提供了清晰明了的约定。 同时,Django 尝试留下一些方法,来让你根据需要在framework之外来开发。 本书的目的是...
9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I 9.8.2、Mode II:Model-View-Controller 9.9、实例操作:MVC设计模式应用 9.10、过滤器 9.10.1、过滤器的基本概念 9.10.2、实现过滤器 9.10.3、过滤...
Java Web开发实例大全(提高卷)筛选、汇集了Java Web开发从基础知识到高级应用各个层面的大量实例及源代码,共有600个左右,每个实例及源代码按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进行了分析...
9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I 9.8.2、Mode II:Model-View-Controller 9.9、实例操作:MVC设计模式应用 9.10、过滤器 9.10.1、过滤器的基本概念 9.10.2、实现过滤器 9.10.3、过滤...
9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I 9.8.2、Mode II:Model-View-Controller 9.9、实例操作:MVC设计模式应用 9.10、过滤器 9.10.1、过滤器的基本概念 9.10.2、实现过滤器 9.10.3、过滤器的...
视图层 使用jsp技术实现 控制层 使用Servlet技术实现 模型层 使用javabean 和 sqlBean实现(或者使用Dao实现)
基于Java的Web应用系统开发模式分析.pdf
摩登春天 Spring RESTful Web开发模式
同时各种设计模式也在Web开发中得到了新的应用。其中Object Oriented思想和MVC设计模式无疑是最经典也是最常用的,它们极大地增加了代码的重要性,缩短了开发周期,特别是在中型和大型项目上,优势更加明显。
发刊论文:面向企业级 web 应用的前后端分离开发模式及实践 针对企业级的 web 应用,研究前后端分离技术,提出一种解决多终端性能、组件化开发和打包部署的完整的开发模型,通过Vue实现组件化开发思想。企业级开发...
9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I 9.8.2、Mode II:Model-View-Controller 9.9、实例操作:MVC设计模式应用 9.10、过滤器 9.10.1、过滤器的基本概念 9.10.2、实现过滤器 9.10.3、过滤器的...
浅析MVC模式在WEB开发中的应用 浅析MVC模式在WEB开发中的应用
9.8、WEB开发模式:Mode I与Mode II 9.8.1、Mode I 9.8.2、Mode II:Model-View-Controller 9.9、实例操作:MVC设计模式应用 9.10、过滤器 9.10.1、过滤器的基本概念 9.10.2、实现过滤器 9.10.3、过滤器的...