《读书笔记-原创》
一、Sevlet组件(容器-Servlet容器)
1、HttpServletRequest:在request范围内共享数据。
2、HttpSession:容器为每个HTTP会话创建一个HttpSession实例,在session范围内共享数据。
3、ServletContext:容器为每个Web应用创建一个ServletContext实例,在application范围共享数据。
4、HttpServletResponse:用于生成HTTP响应结果。
二、共享数据在web应用中的范围
共享数据有4种存在范围:
1、page:用户请求访问的当前JSP网页。
2、request:用户请求访问的当前web组件,以及和当前Web组件共享同一个用户请求的其它web组件。
如果用户请求访问的是JSP网页,那么该JSP网页的<%@include>指令以及<forward>标记包含的其它
JSP文件也能访问共享数据。(request范围内的共享数据实际上存放在HttpServleRequest对象中)
3、session:共享数据存放在整个HTTP会话的生存周期,同一个HTTP会话中的web组件都能共享它。
(session范围内的共享数据实际上是存放在HttpSession对象中的)
4、application:共享数据存放在整个Web应用的生命周期,web应用中的所有web组件都能共享它。
(共享数据实际上存放在ServletContext对象中)
注: application>session>request>page
4种范围的生命周期长短比较,几种范围之间并不存在包含关系。
三、访问过程
用户第一次访问web应用中支持会话的某个网页时,就会开始一个新的HTTP会话,Servlet容器为
这个会话创建一个HttpSession对象。客户浏览这个web应用的不同网页时,始终处于一个会话中。
四、session范围内共享数据的思考。
1、在session范围内共享数据,有助于服务器在同一个HTTP会话中跟踪用户的状态(购物网站中购物车的状态)。
2、在session范围内保存大量数据,会消耗大量内存资源(假设一个网站同时被1000个用户访问,每个用户session占用0.5MB内存,那么所有的session共占用
500MB空间)。
3、解决session消耗大量内存的方法:
(1)运用Java Web容器的Session管理工具,对Session进行持久化管理(Tomcat就提供了管理Session的功能)。
(2)如果把共享数据在request范围内可实现存放在Session范围内同样的功能,优先考虑保存在request范围内。因为HttpServletRequest对象比HttpSession对象
短得多,当服务器完成用户请求时,相应的request对象就结束生命周期,
java虚拟机回收Request对象占用的内存。
五、JavaBean组件及其在web应用中的范围。
关于JavaBean:
1、必须放在一个包中
2、必须声明为public class
3、所有的属性必须封装(声明为private)
4、设置和取得的属性可以通过setter、getter
5、使用JSP标签调用JavaBean时必须有一个无参数的构造方法。
(1)引用:
<jsp:useBean id="userCount" scope="page" class="wuyechun.javabeantest.javabean.UserCount"></jsp:useBean>
(2)赋值
所有属性:<jsp:setProperty property="*" name="userCount"/>
单个属性:<jsp:setProperty property="userName" name="userCount" value="wuyechun"/>
(3)显示
<h3>姓名:<jsp:getProperty name="userCount" property="userName"/></h3>
分享到:
相关推荐
Web基础Web基础Web基础Web基础Web基础Web基础Web基础Web基础Web基础Web基础Web基础Web基础Web基础
网站制作 课件 CSS 网站模板 网站制作 课件 CSS 网站模板网站制作 课件 CSS 网站模板网站制作 课件 CSS 网站模板网站制作 课件 CSS 网站模板网站制作 课件 CSS 网站模板网站制作 课件 CSS 网站模板
web基础知识web基础知识web基础知识
Web基础知识 ppt格式 Web基础知识 ppt格式
Web基础笔试题,很不错的资料 web技术
不能一下子上传整个web 测试学习资料,分六次上传 1.web系统基础 2.理解网络协议 3.http协议详解 4.web 前端分析 5.web 安全性测试 6.web 兼容性以及可用性测试
java web 基础 java web 基础java web 基础java web 基础 java web 基础 java web 基础 java web 基础 java web 基础
电大web开发基础形考5.pdf
Java Web开发基础知识Java Web开发基础知识Java Web开发基础知识Java Web开发基础知识
web开发基础 知识框架
这是我们学校web基础课的上机指导手册,跟着这上面的一步一步做学会不成问题
web基础项目包
JAVA-web基础知识点.docJAVA-web基础知识点.doc
国开电大《WEB开发基础》形考任务1【答案】实验1实验1:电商网站前端页面内容编写(16分)
Linda Web前段基础实验一最简单的一个网页,用了iframe来组合多个网页
PythonWeb开发基础教程-第1章-Pyhton-Web开发起步.pdf该文档详细且完整,值得借鉴下载使用,欢迎下载使用,有问题可以第一时间联系作者~
web 编程 基础 复习题 web 编程 基础 复习题
无忧返利网制作资料,HTML,web基础资料HTML完整篇,
Web技术基础
基础web漏洞基础web