ServletConfig和ServletContext
ServletConfig和ServletContext
- Servlet初始化参数
在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为Servlet配置一些初始化参数
<servlet-name>ServletConfigDemo1</servlet-name>
<servlet-class>....</servlet-class>
....
<init-param>
<param-name>charest</param-name>
<param-value>UTF-8</param-value>
</init-param>
....
</servlet>
- 通过ServletConfig获取Servlet的初始化参数
要想获取Servlet的初始化参数,顾名思义,应该在初始化中得到 所以在init()中:
public void init(ServletConfig config) throws ServletException {
this.config = config;
}
Servlet对象中含有ServletConfig对象,可以通过this.getServletConfig()获得(servletConfig)
而获取初始化参数,只需要调用servletConfig.getInitParameter("charest")
- 多个Servlet之间通过ServletContext共享数据
由于ServletConfig维护了ServletContext的引用,可以用 this.getServletConfig().getServletContext()获取ServletContext对象(context)
也直接this.getServletContext() 数据传输过程定义在doGet()中.
servlet1传入数据: context.setAttribute()
servlet2获取数据: context.getAttribute()
当然也要在servlet1运行之后servlet1才能取得共享数据
- 获取WEB应用的初始化参数
<display-name></display-name>
<context-param>
<param-name>url</param-name>
<param-value>jdbc:mysql://localhost:3306/test</param-value>
</context-param>
通过ServletContext获取整个web网站的初始化参数
context.getInitParameter("url")
- ServletContext请求转发
RequestDispatcher rd = context.getRequestDispacher("/servlet/....");
rd.forward(request,response);
- ServletContext读取资源文件
使用ServletContext的getResourceAsStream()方法获取输入流对象
InputStream in = this.getServletContext().getResourceAsStream((String) uri);
然后将数据写进输入流
- 客户端缓存Servlet输出
在客户端进行合理的数据缓存,可以避免浏览器频繁的向服务器发送多余请求.
下面一段代码为将数据缓存到浏览器1天时间
String data = "reserved"; response.setDateHeader("expires",System.currentTimeMillis()+24 * 3600 * 1000); response.getOutputStream().write(data.getBytes());
ServletConfig和ServletContext的更多相关文章
- ServletConfig与ServletContext
ServletConfig与ServletContext对象详解 一.ServletConfig对象 在Servlet的配置文件中,可以使用一个或多个<init-param>标签为s ...
- JavaEE:Servlet简介及ServletConfig、ServletContext
Servlet简介 1.Servlet是sun公司提供的一门用于开发动态web资源的技术*静态web资源:固定数据文件*动态web资源:通过程序动态生成数据文件2.Servlet技术基于Request ...
- day05 Servlet 开发和 ServletConfig 与 ServletContext 对象
day05 Servlet 开发和 ServletConfig 与 ServletContext 对象 1. Servlet 开发入门 - hello world 2. Servlet 的调用过程和生 ...
- JaveWeb学习之Servlet(二):ServletConfig和ServletContext
原文同步发表至个人博客[夜月归途] 原文链接:http://www.guitu18.com/se/java/2018-07-26/20.html 作者:夜月归途 出处:http://www.guitu ...
- ServletConfig、ServletContext 的应用
一.ServletConfig对象及其应用(用的不多) 1. Context和ContextPath:一个web工程,若名为JavaWeb,访问的路径为:http://localhost:8080/J ...
- JavaWeb学习笔记:ServletConfig()和ServletContext()
ServletConfig()和ServletContext() 1.ServletConfig() ServletConfig是一个接口,它由server提供商来实现. ServletConfig封 ...
- ServletConfig和ServletContext 区别
ServletConfig和ServletContext 1.ServletContext在整个web应用程序生命周期内存在,用来保存全局对象,整个web应用都可以使用其获取context参数.当 ...
- 谈谈 ServletConfig 和 ServletContext
目录 一.ServletConfig 和 ServletContext 的概念 二.ServletConfig 和 SerlvetContext 代码表示 一.ServletConfig 和 Serv ...
- Servlet技术之——概述、实现、细节、获取资源、ServletConfig、ServletContext
Servlet概述.实现.细节.获取资源.ServletConfig.ServletContext (一) Setvlet基本概述 (1) 什么是Servlet ? Servlet(Server Ap ...
随机推荐
- ajax + php + Controller 控制所有后台函数调用
转载请注明出处:http://www.cnblogs.com/ghypnus/p/4645873.html 好久没有来这边发布代码了 总共分成3大部分来完成php的ajax调用逻辑,以下是大致的结构 ...
- $_FILES系统函数
PHP编程语言中的常见的$_FILES系统函数用法有: $_FILES['myFile']['name'] 显示客户端文件的原名称. $_FILES['myFile']['type'] 文件的 MIM ...
- ArcGIS 栅格数据已加载后的获取
原文 http://www.cnblogs.com/zoe-j/archive/2012/02/16/2354037.html 简单记一下,最近开始做Arcgis engine的开发, 已经通过了to ...
- Common Lisp 编译器IDE环境搭建
搭建Common Lisp编程环境的方法有很多种,这里我使用的是最常见的一种:SBCL + Emacs + SLIME. SBCL是Steel Bank Common Lisp的简称,它是Common ...
- logstash 解析mysql slow log
# User@Host: zjzc_app[zjzc_app] @ [10.252.148.16xx] Id: 6043127 # Query_time: 2.581184 Lock_time: 0. ...
- UESTC_秋实大哥带我飞 2015 UESTC Training for Graph Theory<Problem B>
B - 秋实大哥带我飞 Time Limit: 300/100MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit ...
- UESTC_Eight Puzzle 2015 UESTC Training for Search Algorithm & String<Problem F>
F - Eight Puzzle Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) ...
- PB C/S轉B/S ODBC方式連接數據庫
PB C/S轉B/S ODBC方式連接數據庫,DSN需要建為系統而不是使用者DSN,否則連不上數據庫.
- iOS加密个人见解
说说常用的加密方式 1.单向加密,譬如 md5 .SHA 但是这种单向加密安全性也不高了,现在cpu.gpu都那么强大,运算速度很快,彩虹表 撞库 还是容易被攻破的. 如果非得用的话,可以md5加盐, ...
- hpux操作系统的关机与重新启动命令
关机 shutdown -hy 0 重新启动: shutdown -ry 0