转载自:http://lewis-q.iteye.com/blog/161814,仅供学习,谢谢作者
1 Web应用共享数据区ServletContext接口
ServletContext接口表示一个web应用的上下文。可以想象成一个web一个能用的共享数据区域,该区域保存整个web共享数据。
1.1 Servlet容器何时创建ServeltContext接口实现类
当一个web应用启动的时候,就会创建该ServletContext接口的实现类。我们可以在根据需求,读写ServletContext这个web共享区的数据,那么如何获得ServletContext这个实例呢?下面提供了两种方法
1.2 如何获得ServletContext接口实例
方法1:
可以通过ServletConfig接口的getServletContext()方法获得
方法2:
通过GenericServlet抽象类的getServletContext()方法获得,不过这个方法其实也是调用了ServletConfig的getServletContext()方法
在GenericServlet.java中
- public ServletConfig getServletConfig() {
- return config;
- }
-
- public ServletContext getServletContext() {
- return getServletConfig().getServletContext();
- }
1.3 一个计数器实例
- package servletcontext;
-
- import java.io.IOException;
- import java.io.PrintWriter;
-
- import javax.servlet.ServletContext;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
-
- public class CounterServlet extends HttpServlet
- {
- public void doGet(HttpServletRequest request, HttpServletResponse response){
- try
- {
- response.setCharacterEncoding("gb2312");
-
- ServletContext sc = super.getServletContext();
- Integer count = (Integer) sc.getAttribute("count");
- if(null == count){
- count = new Integer(1);
- }else{
- count = new Integer(count.intValue()+1);
- }
- sc.setAttribute("count", count);
- PrintWriter out = response.getWriter();
- out.print("<body>");
- out.print("你登录的次数是:"+count.intValue());
- out.print("</body>");
- out.close();
-
- } catch (IOException e)
- {
- e.printStackTrace();
- }
- }
-
- public void doPost(HttpServletRequest request, HttpServletResponse response){
- doGet(request,response);
- }
- }
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app version="2.4"
- xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
- http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
-
- <servlet>
- <servlet-name>CountServlet</servlet-name>
- <servlet-class>servletcontext.CounterServlet</servlet-class>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>CountServlet</servlet-name>
- <url-pattern>/count</url-pattern>
- </servlet-mapping>
-
- </web-app>
分享到:
相关推荐
### Servlet学习笔记精炼知识点 #### 一、Servlet初始化与加载机制 1. **Servlet注册与实例化**:在Web应用中,一个Servlet的生命周期始于它的注册与实例化过程。通常,这一过程是在Web服务器启动时,根据`web.xml...
本学习笔记源码提供了全面的学习资源,涵盖了这两个技术的基础到高级应用,旨在帮助开发者深入理解并熟练掌握JSP和Servlet。 1. **JSP基础**: JSP是一种服务器端的脚本语言,它将HTML、CSS、JavaScript与Java代码...
- 编写Servlet:创建一个Java类并实现Servlet接口,或者继承GenericServlet或HttpServlet。 - 配置Servlet:修改`web.xml`文件,为Servlet提供一个可以通过HTTP访问的URI。 - 部署Servlet:将应用部署到如Tomcat...
### Servlet学习笔记5 #### 一、Servlet与Filter的基本概念及使用 在Web开发中,Servlet作为Java EE标准的一部分,在处理HTTP请求时扮演着至关重要的角色。而在Servlet的应用过程中,Filter是一个非常重要的组件,...
由于直接学习笔记的内容没有给出具体的实例代码和详细解释,所以这里只提供了理论层面的知识点。如果需要学习具体实现,可以寻找相关的教程和项目实践来加深理解。同时需要注意的是,由于JSP/Servlet技术相对老旧,...
【Servlet&JSP基础知识】 ...以上是`head_first_servlet&jsp`学习笔记的主要知识点,涵盖了Servlet和JSP的基础、Web应用架构、MVC模式、会话管理和JSP编程等多个方面,为深入理解和实践Servlet与JSP开发奠定了基础。
**Servlet学习笔记** Servlet是Java Web开发中的核心组件,它是一种服务器端的Java应用程序,用于扩展Web服务器的功能,处理来自客户端(通常是Web浏览器)的请求并返回响应。本笔记将详细探讨Tomcat的配置、...
**JSP(JavaServer Pages)和Servlet是Java Web开发中的两个核心技术,它们在构建动态Web应用程序方面发挥着关键作用。...通过阅读这些笔记,你可以系统地学习这两门技术,并将它们应用于实际项目中。
Servlet是Java平台上的一个核心技术,用于开发动态Web应用程序。...在本文中,我们将深入探讨Servlet的基础知识,包括其基本概念...通过学习和实践,开发者可以熟练地利用Servlet来处理各种Web请求,实现复杂的业务逻辑。
"Servlet中文笔记"涵盖了Servlet的各个方面,旨在帮助学习者深入理解这一技术。 首先,我们来谈谈Servlet的生命周期。Servlet生命周期主要包括三个阶段:加载与实例化、初始化和销毁。当服务器首次接收到对Servlet...
【标题】:“韩顺平servlet笔记”是一个关于Servlet技术的学习资料集合,主要由著名IT教育专家韩顺平老师提供。Servlet是Java EE平台中用于处理HTTP请求的核心组件,广泛应用于Web开发领域。 【描述】:这个笔记...
**J2EE学习笔记概述** J2EE(Java 2 Platform, Enterprise Edition)是一个由Sun Microsystems(现已被Oracle收购)开发的平台,主要用于构建企业级的分布式应用系统。它提供了服务器端组件模型、服务和API,支持...
以上就是关于JavaWeb阶段的学习笔记,重点介绍了Servlet的基本概念和开发流程、ServletConfig与ServletContext的应用、处理HTTP请求的相关技术、Request对象的使用、JSP的简介以及BeanUtils工具包的介绍。...
J2EE学习笔记主要涵盖了Java企业级开发的关键概念和技术,特别是关于JSP、JavaBean以及Servlet的使用。首先,J2EE模式中的Value Object(值对象)是一个关键概念,它是一个不含业务逻辑的Java对象,通常用于在不同...
Java Web学习笔记 Java Web学习笔记是Java Web开发的入门级教程,旨在帮助读者快速掌握Java Web开发的基本概念和技术。本笔记涵盖了Java Web开发的基本概念、Servlet、JSP等核心技术,并对Java Web项目目录结构、...
这个“Servlet学习文档”包含了两种格式:MD(Markdown)文件和PDF,都是为了帮助个人深入理解Servlet技术。 Markdown文件Servlet.md可能是教程笔记或者文章,易于阅读和编辑,通常包括代码示例和步骤解释。PDF文件...
### Servlet学习总结 #### 第一章:Servlet基础部分 ##### 1.1 Servlet简介 - **定义**:Servlet 是一种服务器端的小程序,用于处理来自客户端的请求,并生成响应返回给客户端。它与 Applet 相对,Applet 是...
【JavaEE学习项目源代码及学习笔记.zip】这个压缩包包含了一系列关于JavaEE技术栈的实践项目源码和对应的学习笔记,旨在帮助开发者深入理解JavaEE的各项核心技术。下面将逐一介绍这些子文件所涵盖的JavaEE知识点。 ...