Servlet-02 Servlet相关类

ServletConfig / ServletContext / ServletRequest / ServletResponse

一. ServletConfig:封装了Servlet得配置信息,并且可以获取ServletContext对象。

1 获取初始化参数

  a. 配置初始化参数

<servlet>
      <servlet-name>helloServlet</servlet-name>
      <servlet-class>com.bwr.start.HelloServlet</servlet-class>    <!-- init-param节点必须在load-on-startup前 -->
      <init-param>
             <param-name>encode</param-name>
             <param-value>utf-8</param-value>
      </init-param>    <init-param>             <param-name>encode</param-name>             <param-value>utf-8</param-value>    </init-param>    <load-on-startup>1</load-on-startup> </servlet>

  b. 获取初始化参数

    getInitParamter(String name)   获取Servlet指定名称的初始化参数

    getInitParameterNames()    获取Servlet中所有的初始化参数名的枚举值

       public void init(ServletConfig config) throws ServletException {
        System.out.println("init...");
        String name = config.getInitParameter("name");
        System.out.println("name: " + name);

        Enumeration<String> params = config.getInitParameterNames();
        while(params.hasMoreElements()) {
            String param = params.nextElement();
            String value = config.getInitParameter(param);
            System.out.println(">> " + param + ": " + value);
        }
    }    

    Servlet加载时后台输出结果:

name: tom
>> encode: utf-8
>> name: tom

2  获取Servlet名称   getServletName()

3  获取Servlet上下文 getServletContext()

二. ServletContext

  1.Servlet引擎为每个WEB应用程序都创建一个对应的ServletContext对象,在Servlet中可以通过ServletConfig的getServletContext()方法获取。

  2.由于一个WEB应用中所有Servlet共享同一个ServletContext对象,所以也被称之为application对象(WEB应用程序对象)

  3.可以通过ServletContext获取当前WEB应用各方面的信息:

  ① 获取当前WEB应用初始化参数

    配置:在web.xml文件的web-app标签下配置

  <context-param>
      <param-name>web-name</param-name>
      <param-value>Hello</param-value>
  </context-param>
  <context-param>
      <param-name>version</param-name>
      <param-value>2.2.1</param-value>
  </context-param>

    获取:通过ServletContext的getInitParamter(String name)和getInitParamterNames()获取。

  ② 获取当前WEB应用的某个文件的绝对路径

    a.文件必须位于WEB应用内,即在项目的WebContent下;获取的绝对路径是应用部署后文件所在的绝对路径

    b. 使用方法servletContext.getRealPath("/note.txt"),"/"在eclipse项目结构中代表WebContent

  ③ 获取当前WEB应用的名称

    servletContext.getContextPath()  // "/JavaWeb01"

  ④ 获取当前WEB应用某个文件对应的输入流

    servletContext.getResourceAsStream(String path);  // path前的"/"为WEB应用的根目录

    a.在eclipse项目下src下有文件db.properties

       ServletContext().getResourceAsStream("/WEB-INF/classes/db.properties");

       getClass().getClassLoader().getResourceAsStream("db.properties");

    b.在eclipse项目下WebContent下有文件note.txt

      ServletContext().getResourceAsStream("/note.txt");

  ⑤ 与Attribute相关的方法 

三. ServletRequest

四. ServletResponse

时间: 2024-10-12 01:28:16

Servlet-02 Servlet相关类的相关文章

Web---演示Servlet的相关类、下载技术、线程问题、自定义404页面

Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代表用户的请求. ServletResponse – 代表用户的响应. HttpSession – 代表用户的一次会话. 本篇博客演示:ServletConfig类 和 ServletContext 类(网页点击量统计,留言板和图片下载技术(其他类型文件类似)) ServletConfig: 它包含了Serv

Web---演示Servlet的相关类、表单多参数接收、文件上传简单入门

说明: Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代表用户的请求. ServletResponse – 代表用户的响应. 本篇博客讲解: ServletRequest – 代表用户的请求. ServletResponse – 代表用户的响应. 表单中的多选框参数接收. 文件的上传技术. ServletRequest : ServletRequest

Servlet相关类/接口说明

可通过该网址查看英文API       https://docs.oracle.com/javaee/6/api/ Java Servlet API的部分类和接口的详细说明.本API包含了两个软件包,十二个接口和九个类. 软件包:javax.servlet  所包含的接口:RequestDispatcher:Servlet:ServletConfig:ServletContext:ServletRequest:ServletResponse:SingleThreadModel.  所包含的类:G

Servlet及相关类和接口

上一篇介绍了在Web项目中web.xml文件的配置信息,本篇主要介绍里面非常重要的配置--Servlet配置,重点介绍与Servlet相关的几个接口和类,包括Servlet接口.ServletConfig接口.ServletContext接口.GenericServlet类.HttpServlet类. 1.Servlet介绍 什么是Servlet: 百度的解释是"小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容".Servle

Servlet的接口实现类

Sun公司提供了两个默认实现类 GenericServlet和HttpServlet HttpServlet指能够处理Http请求的Servlet,它在原有的Servlet基础上添加了与HTTp相关的处理方法.因此编写Servlet事,通常继承这个类 HttpServlet复写了Server方法,在该方法内自动判断请求方式,根据GET请求和POST请求分别调用doGet和doPost方法.因此,通常只需要重写这两个方法即可,不用重写service方法. 直接new一个Servlet,就是继承于H

servlet简介和相关知识点

关于Servlet! 1.servlet简介 sun提供的一种动态web资源开发技术.本质上就是一段java小程序,可以将Servlet加入到Servlet容器中运行. *Servlet容器 -- 能够运行Servlet的环境就叫做Servlet容器. --- tomcat *web容器 -- 能够运行web应用的环境就叫做web容器 --- tomcat 2.用记事本写一个servlet程序 写一个类实现sun公司定义的Servlet接口 将写好的类配置到tomcat中的web应用的web.x

Servlet基础之一:Servlet基本接口与类

1.概述 Servlet API中共有5个包,约113个接口和类: javax.servlet javax.servlet.http javax.servlet.jsp javax.servlet.annotation javax.servlet.descriptor 2.Servlet接口 (1)所有Servlet/JSP应用必须直接或者间接实现Servlet接口, Servlet/JSP容器会将实现了Servlet接口的类加载至容器,以供访问. (2)Servlet中共定义了5个方法: vo

JavaWeb网上图书商城完整项目--21.用户模块各层相关类的创建

1.现在要为user用户模块创建类 用户模块功能包括:注册.激活.登录.退出.修改密码. User类对照着t_user表来写即可.我们要保证User类的属性名称与t_user表的列名称完全相同. 我们来创建User类 package com.weiyuan.goods.user.domian; public class User { private String uid; //主键 private String loginname;// 登陆名称 private String loginpass

Servlet技术——Servlet基础

Servlet是运行在Web服务器端的Java应用程序,它使用Java语言编写,具有Java语言的优点.与Java程序的区别是,Servlet对象主要封装了对HTTP请求的处理,并且它的运行需要Servlet容器的支持.在Java Web应用方面,Servlet的应用占有十分重要的地位,它在Web请求的处理功能方面也十分强大. 1.Servlet体系结构Servlet实质上就是按Servlet规范编写的Java类,但是它可以处理Web应用中的相关请求.Servlet是一个标准,它由Sun定义,其

Servlet、Servlet容器等内容讲解

转载自http://blog.csdn.net/iAm333 对于Servlet.Servlet容器以及一个Servlet容器-Tomcat这些概念讲解的挺清晰的,转载下 之前在开源中国看到一篇文章<初学 Java Web 开发,请远离各种框架,从 Servlet 开发>,觉得很不错.想到自己之前一直对各种框架执迷不悟,顿感惭愧.于是,看了孙鑫的<Servlet/JSP深入详解:基于Tomcat的Web开发>.林信良的<JSP&Servlet学习笔记(第二版)>