《读书笔记-原创》
一、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测试之1Web系统基础”这一主题,帮助读者建立扎实的Web测试理论基础。 首先,理解Web系统的基础至关重要。一个Web系统是由多个组件组成的,包括Web服务器、客户端(浏览器)、应用服务器和...
Web基础知识ppt 本篇文章主要讲解了Web基础知识的相关概念和技术,涵盖了Web的定义、URL、HTML、HTTP、Web服务器、Web浏览器等方面的内容。通过本篇文章,读者将了解Web技术的基础知识和原理。 1.1 Web基础知识 ...
web基础知识web基础知识web基础知识
《Web技术基础》上机指导手册是一份详细的教学材料,旨在帮助初学者系统地学习和实践Web开发的基础知识。这份手册覆盖了从静态网页制作到动态网页编程等多个方面,通过一系列的实验,让学习者逐步掌握Web开发的核心...
web开发基础 知识框架
PythonWeb开发基础教程-第1章-Pyhton-Web开发起步.pdf该文档详细且完整,值得借鉴下载使用,欢迎下载使用,有问题可以第一时间联系作者~
【标题】"Web前端基础案例"是一门针对初学者的教程,主要涵盖了Web开发中三个核心技术的基础知识:HTML、CSS和JavaScript。这个教程通过实践案例的方式,帮助学习者理解和掌握这些技术的应用。 【HTML(超文本标记...
【Web开发基础知识零基础自学资料】是一套全面的教程,旨在帮助初学者系统地学习和掌握Web开发的核心技能。这份资料涵盖了从环境搭建到实际应用的各个环节,是想要踏入Web开发领域的理想起点。 首先,我们要了解...
Web 前端开发基础知识点总结 本资源摘要信息将对《web 前端开发基础》作业考核试题题库大全进行详细的知识点总结,涵盖了 HTML、CSS、JavaScript 等多个方面的知识点。 HTML 基础知识点 1. HTML 属性可用来定义...
Web编程基础是初学者入门IT行业的关键领域,尤其对于网页设计和开发来说至关重要。本章主要探讨了Web编程的核心概念,特别关注了ASP.NET这一强大的Web应用程序开发平台。 首先,让我们了解一下因特网基础概念。...
**Python Web开发基础教程概述** Python Web开发基础教程是一门专为计算机科学和技术专业的学生设计的重要课程,旨在提供系统且全面的Web开发知识,为Web项目开发奠定坚实的基础。这门课程强调实践性,鼓励学生在...
在深入了解Java Web开发的基础知识之前,我们需要理解几个核心概念。 首先,Java Web应用的基础是Java Servlet,它是一个Java类,用于扩展服务器的功能,处理HTTP请求并生成响应。Servlet API是开发Servlet的接口...
【标题】"WEB基础实训漫步时尚广场项目"是针对初学者设计的一个实践项目,旨在帮助学员掌握Web开发的基础技能。这个项目可能包含了实现一个在线购物平台的源代码,即"漫步时尚广场",并可能涉及网页设计、前端交互...
首先,我们从【第1章】开始,这通常会介绍Web的起源、发展以及其工作原理。Web是由超文本传输协议(HTTP)和超文本标记语言(HTML)共同构建的全球信息网络。这一章可能会讲解HTTP协议的基础,包括请求-响应模型,...
1. 专业能力目标:要求学生掌握Web基础、HTML、CSS、JavaScript编程规范和方法,并能运用所学知识制作网页特效。 2. 社会能力目标:培养学生良好的沟通能力、团队合作精神、分析和解决问题的能力,以及创新和敬业的...
1. **HTML基础**:HTML(HyperText Markup Language)是创建网页的基础语言,学习者会了解HTML标签、属性和结构,如段落、标题、超链接和图像等元素的使用。 2. **CSS基础**:CSS(Cascading Style Sheets)用于...