`
ianylb
  • 浏览: 73540 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

回归JSP基础:重新理解请求作用域

    博客分类:
  • Jsp
阅读更多
application:全局作用范围,整个应用程序共享,就是在部署文件中的同一个webApp共享,生命周期为:应用程序启动到停止.
session:会话作用域,当用户首次访问时,产生一个新的会话,以后服务器就可以记住这个会话状态.生命周期:会话超时,或者服务器端强制使会话失效.
request:请求作用域,就是客户端的一次请求.
page:一个JSP页面.

以上作用范围使越来越小, request和page的生命周期都是短暂的,他们之间的区别就是:一个request可以包含多个page页(include,forward以及filter).举个简单的例子:
jsp1.jsp
<jsp:useBean id="beanID" class="xxx .xxx.BeanClass" scope="request" />
<jsp:include page="jsp2.jsp" />
-----------
jsp2.jsp
<jsp:getProperty name="beanID" property="sample" />

运行jsp1.jsp可以正常显示数据,因为作用范围是request,相当于调用了request.setAttribute()方法,

jsp2页通过request.getAttribute来获得这个bean.如果把request改为page,就会抛出NullPointerExceptioin.

一个请求可以跨好几个JSP(include和forword)和Servlet(如filter).不过这里有一个需要注意的就是区别<jsp:include> 和<%@ include %>.如果上面的<jsp:include page="jsp2.jsp" />改为<%@ include file="jsp2.jsp" %>,即使scope为page也是正确的,<%@ include %>是编译时包含,<jsp:include>是运行时包含.前者就相当于宏,编译时替代,后者相当于函数,运行时返回.


分享到:
评论
1 楼 xfei6868 2012-06-10  
标题让我感兴趣了,但是进来一看原来是这些内容。

我最近在思考的一个问题是:request的作用域本身跟线程是什么关系,在即将到来的nio或者是servlet3中的异步中这种关系是否会发生变化这样的问题。

相关推荐

    jsp九大内置对象和四大作用域详解.docx

    jsp九大内置对象和四大作用域详解 jsp中的九大内置对象和四大作用域是jsp编程中非常重要的概念,它们提供了访问和操作服务器端资源的能力,帮助开发者快速构建动态Web应用程序。 一、request对象 request对象代表...

    JSP的九个内置对象及四个作用域

    JSP 九个内置对象及四个作用域 JSP(Java Server Pages)是一种基于Java的服务器端脚本...JSP四个作用域包括page、request、session和application四个作用域,分别对应着页面、请求、会话和应用程序四个级别的作用域。

    JSP内置对象及四种作用域

    jsp中的request.getParameter(参数名):接受客户端的数值,而request是jsp的内置对象

    JSP 内置对象:作用域通信对象.pptx

    作用域通信对象 pageContext request session application

    JSP中的常见的四种作用域

    JSP中常见的page,request,session,application的作用域

    JSP 作用域与隐式对象

    JSP 作用域与隐式对象[SP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1] 是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似...

    JSP 中Spring Bean 的作用域详解

    JSP 中Spring Bean 的作用域详解 Bean元素有一个scope属性,用于定义Bean的作用域,该属性有如下五个值: 1&gt;singleton: 单例模式,在整个spring IOC容器中,单例模式作用域的Bean都将只生成一个实例。一般Spring...

    JSP9大内置对象及其作用域

    内容讲诉了jsp9大内置对象及其作用域。

    jsp的四个作用域

    jsp的四个作用域\

    JavaWeb开发技术-JSP动作元素.pptx

    在JSP页面中,为了把其他资源的输出内容插入到当前JSP页面的输出内容中,JSP技术提供了&lt;jsp:include&gt;动作元素。其语法格式为: &lt;jsp:include page="relativeURL" flush="true|false" /&gt; 指定被引入资源的相对路径 ...

    jsp的九大内置对象和四大作用域

    jsp的九大内置对象和四大作用域.一共有九大内置对象: request、response、out、session、application、pageContext、page、config、exception 四大作用域 page(页面作用域),request(请求作用域),session(会话...

    jsp基础测试 期末考试

    考虑下面JSP文件代码片断: &lt;jsp:include page=”test2.jsp”&gt; &lt;jsp:param name=”username” value=”accp”/&gt; &lt;/jsp:include&gt; 以下( )代码片断放置在test2.jsp中不会导致错误。

    Java Web程序设计任务驱动教程课后习题参考答案 - 蓝敏、周伟敏、杨茜

    * include 指令和&lt;jsp:include&gt;动作的区别:执行时间、引入内容等 * JSP 程序里有三种注释:HTML 注释、Java 注释、JSP 隐藏注释 服务器交互 * 使用 response 对象进行重定向的方法:sendRedirect * session 对象...

    jsp自定义标签实例

    这是本人自己写的,里面包括传参与不传参的标签,很方便,步骤很详细。所有就上传上来了。

    JSP基础教程 JSP开发技巧 JSP开发实例 JSP环境安装配置

    【JSP基础教程】 详细讲解了JSP语法和基本的程序设计方法。内容包括Servlet和JSP概述,JSP简介、JSP入门教程、JSP内置对象、JSP安装和文件操作、JDBCTM指南、JSP由浅入深、JSP实践要点、Apache+Servlet+Jsp环境设置...

    获得请求头的各种参数信息jsp代码

    获得请求头的各种参数信息jsp代码: 客户使用的协议是: HTTP/1.1 获取接受客户提交信息的页面: /004.jsp 接受客户提交信息的长度: -1 客户提交信息的方式: GET 获取 HTTP 头文件中 User-Agent 的值:: ...

    jsp九大内置对象、四种作用域、跳转方式

    jsp有四种属性范围: page -&gt; 页面级别,显然只有在一个页面内可用。 request -&gt; 请求级别 服务器跳转,一次请求之后消失。 session -&gt; 会话级别 客户端跳转(服务器跳转),与浏览器有关,ie是在重新打开ie时才...

    jsp servlet面试题总结

    1. jsp:include:在页面被请求的时候引入一个文件。 2. jsp:useBean:寻找或者实例化一个 JavaBean。 3. jsp:setProperty:设置 JavaBean 的属性。 4. jsp:getProperty:输出某个 JavaBean 的属性。 5. jsp:forward...

    不错的适合练手、课程设计、毕业设计的JSP项目源码:中帆智能建站系统基础版JSP版.rar

    不错的适合练手、课程设计、毕业设计的JSP项目源码:中帆智能建站系统基础版JSP版.rar不错的适合练手、课程设计、毕业设计的JSP项目源码:中帆智能建站系统基础版JSP版.rar不错的适合练手、课程设计、毕业设计的JSP...

    jsp,servlet基础

    jsp 与servlet基础 1:jsp概述 2:jsp基础 3:jsp隐含对象 4:jsp中使用数据库 5:jsp与javabean ...

Global site tag (gtag.js) - Google Analytics