ServletConfig:表示servlet的配置信息,一个servlet对象对应一个servletconfig对象
 
方法:
1.获取初始化参数
config.getInitParameter()
 
 
ServletContext:表示servlet的全局配置信息,一个WebApplication只有一个ServletContext对象,该对象被所有Servlet共用
 
方法:
1.获取全局的初始化参数
context.getInitParameter()
2.获取上下文路径(部署在tomcat中的项目目录名)
context.getContextPath()
3.获取文件的绝对路径(从WebRoot下开始定位文件)
context.getRealPath()
4.获取资源,将资源作为流返回
context.getResourceAsStream();
5.显示目录下的资源
Set<String> paths = sc1.getResourcePaths();
6.存储一个key-value数据
context.setAttribute(key,value)
根据key获取value
context.getAttribute(key)
 
ServletConfig:
//web中
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//1.获取ServletConfig对象
// 表示servlet的配置信息
ServletConfig config = this.getServletConfig();
//2.使用config读取初始化参数
String value = config.getInitParameter("listings");
System.out.println(value);
//获取servletName
System.out.println(config.getServletName()); } }
/*@Override
public void init(ServletConfig config) throws ServletException {
String value = config.getInitParameter("listings");
System.out.println(value);
}*/

ServletContext

//web中
<context-param>
<param-name>aaa</param-name>
<param-value>bbb</param-value>
</context-param>
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { //1.获取ServletContext:servlet的全局对象,整个项目就一个ServletContext对象
ServletContext sc1 = this.getServletContext();
ServletContext sc2 = request.getServletContext();
ServletContext sc3 = this.getServletConfig().getServletContext(); //2.使用该对象
//读取全局配置信息
String val = sc1.getInitParameter("aaa");
System.out.println(val); //* 获取上下文路径
String contextPath = sc1.getContextPath();
System.out.println(contextPath); //* 获取文件的绝对路径:从WebRoot下开始定位文件
String realPath = sc1.getRealPath("/image/1.jpg");
System.out.println(realPath); //获取资源,将资源作为流返回
InputStream in = sc1.getResourceAsStream("/WEB-INF/car.properties"); //显示目录下的资源
Set<String> paths = sc1.getResourcePaths("/aaa");
for (String string : paths) {
System.out.println(string);
} }
作用域对象
生命周期 作用范围
HttpServletRequest 一次请求 一次请求经过的所有servlet
HttpSession 一次会话 一次会话中,所有的servlet
ServletContext 项目从加载到卸载 一个项目中,所有servlet
 
 
作用域对象,有三个方法:
1.setAttribute(String key,Object value);
2.getAttribute(String key);
3.removeAttribute(String key);
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//1.request对象
request.setAttribute("name", "zhangsan");
//request.getRequestDispatcher("scope2").forward(request, response); //2.session对象 先向浏览器输入,在用下面输出
HttpSession session = request.getSession();
session.setAttribute("age", 18); //3.application对象 先向浏览器输入,所有浏览器都可以输出
ServletContext sc = request.getServletContext();
sc.setAttribute("gender", "男"); }
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//1.获取request对象中数据
/*String name = (String) request.getAttribute("name");
System.out.println(name); //2.获取session对象中的数据
int age = (int) request.getSession().getAttribute("age");
System.out.println(age);*/ //3.获取application对象中的数据
String gender = (String) request.getServletContext().getAttribute("gender");
System.out.println(gender); }
 
 
 
 
 
 
 

06 ServletConfig、ServletContext_作用域对象的更多相关文章

  1. JSP(二):JSP九大内置对象、四个作用域对象

    jsp的九大内置对象:        内置对象:            jsp文件在转译成其对应的Servlet文件的时候自动生成的并声明的对象.我们在jsp页面中直接使用即可.        注意: ...

  2. JSP九大内置对象和四大作用域和Servlet的三大作用域对象

    一.JSP九大内置对象:内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用 内置对象特点: 由JSP规范提供,不用编写者实例化. 通过Web容器实现和管理 所有 ...

  3. servlet的三大作用域对象和jsp的九大内置对象及其四大作用域对象

    servlet的三大作用域对象: request(HttpServletRequest) session(HttpSession): application(ServletContext):tomca ...

  4. Struts2的Action中如何操作作用域对象

    得到作用域对象有三种方法,这里用代码来解释: package com.cy.action; import javax.servlet.ServletContext; import javax.serv ...

  5. day05 Servlet 开发和 ServletConfig 与 ServletContext 对象

    day05 Servlet 开发和 ServletConfig 与 ServletContext 对象 1. Servlet 开发入门 - hello world 2. Servlet 的调用过程和生 ...

  6. EL作用域对象

    EL与jsp的作用域对象对应关系,,,,,及EL具体作用域对象介绍,如下

  7. JSP的9大内置对象和4打作用域对象

    一.9大内置对象 二.4大内置作用域对象

  8. SpringBoot入门06-Thymeleaf显示作用域对象种的对象

    作用域对象request,session, servletContext中的数据在Thymeleaf中的显示都是相同的 作用域对象中的 List和Set的集合在html中的显示是相同的 作用域对象中的 ...

  9. ServletConfig与ServletContext对象(接口)

    ServletConfig:封装servlet的配置信息. 在Servlet的配置文件中,可以使用一个或多个<init-param>标签为servlet配置一些初始化参数. <ser ...

随机推荐

  1. swoole的websockte例子

    服务器的环境,建议用bt.cn的一键环境 服务端: <?php /** * Created by PhpStorm. * User: Administrator * Date: 2019\5\2 ...

  2. Oracle 中的 Profile

    一.目的: Oracle系统中的profile可以用来对用户所能使用的数据库资源进行限制,使用Create Profile命令创建一个Profile,用它来实现对数据库资源的限制使用,如果把该prof ...

  3. yum安装PostgreSQL 在6和7

    一.安装PostgreSQL 复制代码// 安装EPEL源# wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.n ...

  4. c#添加资源

    1.在项目目录下创建Resources文件夹,把需要用到的图片放到此文件夹里 2.在项目属性-资源里面添加这些图片 此时就可以在项目里看到资源文件夹及其下的图片了 3.在代码里这样使用这些图片: Im ...

  5. JavaScript箭头函数(Lambda表达式)

    箭头函数也叫lambda表达式 据说其主要意图是定义轻量级的内联回调函数 栗有: 1 var arr = ["wei","ze","yang" ...

  6. 【转载】 第四范式首席科学家杨强:AlphaGo的弱点及迁移学习的应对(附视频)

    原文地址: https://www.jiqizhixin.com/articles/2017-06-02-2 ============================================= ...

  7. ISO/IEC 9899:2011 条款5——5.2.4 环境限制

    5.2.4 环境限制 1.翻译与执行环境都约束了语言翻译器和库的实现.下面概述了对一个顺应标准实现的语言相关的环境限制:库相关的限制在条款7中讨论. 5.2.4.1 翻译限制 1.实现应该能够翻译并执 ...

  8. springboot集成调用Azkaban

    springboot集成调用Azkaban 一. 说明 1.Azkaban是由Linkedin公司推出的一个批量工作流任务调度器,主要用于在一个工作流内以一个特定的顺序运行一组工作和流程,它的配置是通 ...

  9. LeetCode_136. Single Number

    136. Single Number Easy Given a non-empty array of integers, every element appears twice except for ...

  10. (五)UML之协作图

    一.什么是协作图? 顾名思义协作图就是合作图,有合作就涉及到多个对象. 协作图(Collaboration Diagram /Communication Diagram,也叫合作图)是一种交互图(in ...