位置: IT常识 - 正文

Java Web中的ServletContext对象(java web中的转发和重定向)

编辑:rootadmin
Java Web中的ServletContext对象

目录

 ServletContext对象

 获取上下文初始化参数的相关方法

 创建ServletContext对象

 1)通过 GenericServlet 提供的 getServletContext() 方法

2)通过 ServletConfig 提供的 getServletContext() 方法

3)通过 HttpSession 提供的 getServletContext() 方法

4)通过 HttpServletRequest 提供的 getServletContext() 方法

上下文初始化参数

局部参数

 全局参数

 获取ServletContext的全局参数

ServletContext 属性与上下文初始化参数对比

实现数据通讯

 数据通讯的程序实例:

 在浏览器中的操作


 ServletContext对象

推荐整理分享Java Web中的ServletContext对象(java web中的转发和重定向),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:java web中的web是什么意思,javaweb中servlet的作用,java web中的转发和重定向,javaweb中的servlet调用spark,java web中的转发和重定向,javaweb中的servlet怎么建,javaweb中的servlet调用spark,javaweb中的servlet调用spark,内容如对您有帮助,希望把文章链接给更多的朋友!

Java Web中的ServletContext对象(java web中的转发和重定向)

Web 应用中的所有 Servlet 共享同一个 ServletContext 对象,不同 Servlet 之间可以通过 ServletContext 对象实现数据通讯,因此 ServletContext 对象也被称为 Context 域对象。

域对象是服务器在内存上创建的存储空间,该空间用于不同动态资源(例如 Servlet、JSP)之间传递与共享数据。

 获取上下文初始化参数的相关方法StringgetInitParameter(String name)根据初始化参数名 name,返回对应的初始化参 数值。EnumerationgetInitParameterNames()返回 Web 应用所有上下文初始化参数名的枚举 集合,如果没有上下文初始化参数,则返回一个空的枚举集合。 创建ServletContext对象 1)通过 GenericServlet 提供的 getServletContext() 方法//通过 GenericServlet的getServletContext方法获取ServletContext对象ServletContext servletContext = this.getServletContext();2)通过 ServletConfig 提供的 getServletContext() 方法//通过 ServletConfig的 getServletContext方法获取ServletContext对象ServletContext servletContext = this.getServletConfig().getServletContext();//通过 Config的 getServletContext方法获取ServletContext对象ServletContext context = config.getServletContext();3)通过 HttpSession 提供的 getServletContext() 方法//通过 Session的 getServletContext方法获取ServletContext对象ServletContext context = req.getSession().getServletContext();4)通过 HttpServletRequest 提供的 getServletContext() 方法//通过 HttpServletRequest的 getServletContext方法获取ServletContext对象ServletContext servletContext = req.getServletContext();上下文初始化参数局部参数 <servlet> <init-param> <param-name>name</param-name> <param-value>Lungcen</param-value> </init-param> <init-param> <param-name>password</param-name> <param-value>110120130</param-value> </init-param> </servlet> 全局参数 <context-param> <param-name>姓名</param-name> <param-value>Lungcen</param-value> </context-param> <context-param> <param-name>年龄</param-name> <param-value>19</param-value> </context-param> 获取ServletContext的全局参数Enumeration<String> names = this.context.getInitParameterNames(); while (names.hasMoreElements()) { String s = names.nextElement(); writer.write(s + "->" + context.getInitParameter(s) + "<br/>"); }ServletContext 属性与上下文初始化参数对比不 同 点ServletContext 的属性上下文初始化参数创 建 方 式ServletContext 的属性通过调用 ServletContext 接口的 setAttribute() 方法 创建上下文初始化参数通过 web.xml 使用 元素配置可 进 行 的 操 作ServletContext 的属性可以通过 ServletContext 接口的方法进行读取、新 增、修改、移除等操作上下文初始化参数在容器启动后只能被 读取,不能进行新增、修改和移除操作生 命 周 期ServletContext 中属性的生命周期从创建开 始,到该属性被移除(remove)或者容器关 闭结束上下文初始化参数的生命周期,从容器 启动开始,到 Web 应用被卸载或容器 关闭结束作 用使用 ServletContext 中的属性可以实现 Servlet 之间的数据通讯使用上下文初始化参数无法实现数据通讯实现数据通讯

在 Servlet 中,调用 ServletContext 接口的 setAttribute() 方法可以创建一些属性,这些属性被存 放在 ServletContext 对象中。应用中所有 Servlet 都可以对这些属性进行访问和操作,通过它们可以实现应用内不同 Servlet 之间的数据通讯。

voidsetAttribute(String name, Object object)把一个 Java 对象与一个属性名绑定,并将它作为一个属 性存放到 ServletContext 中。 参数 name 为属性名,参数 object 为属性值。voidremoveAttribute(String name)从 ServletContext 中移除属性名为 name 的属性。ObjectgetAttribute(String name)根据指定的属性名 name,返回 ServletContext 中对应 的属性值。 数据通讯的程序实例:package com.zpark.servlet;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.io.PrintWriter;@WebServlet(urlPatterns = "/LLL.do")public class MyServlet04 extends HttpServlet { @Override public void init() throws ServletException { getServletContext().setAttribute("count", 0); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { Integer count = (Integer) getServletContext().getAttribute("count"); count++; getServletContext().setAttribute("count", count); resp.setContentType("text/html;charset=utf-8"); PrintWriter writer = resp.getWriter(); writer.write("欢迎来到界面" + count); writer.close(); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.setCharacterEncoding("utf-8"); doGet(req, resp); }}package com.zpark.servlet;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.io.PrintWriter;@WebServlet("/Lun5.do")public class MyServlet05 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html;charset=utf-8"); PrintWriter writer = resp.getWriter(); Integer count = (Integer) getServletContext().getAttribute("count"); writer.write("今天是一个好日子" + count); writer.close(); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setCharacterEncoding("utf-8"); doGet(req, resp); }} 在浏览器中的操作

本文链接地址:https://www.jiuchutong.com/zhishi/300078.html 转载请保留说明!

上一篇:【node进阶】深入浅出前后端身份验证(下)---JWT(node实战)

下一篇:FPN细节剖析以及pytorch代码实现

  • excel宏如何启动(excel宏如何启动2003)

    excel宏如何启动(excel宏如何启动2003)

  • 自制mp3分享到朋友圈(怎么把自制mp3传到朋友圈)

    自制mp3分享到朋友圈(怎么把自制mp3传到朋友圈)

  • OPPOfindx3后盖是什么材质(oppofindx3后盖是什么材质)

    OPPOfindx3后盖是什么材质(oppofindx3后盖是什么材质)

  • 华为p20pro手机支持5g吗(华为p20pro支持u盘吗)

    华为p20pro手机支持5g吗(华为p20pro支持u盘吗)

  • 腾讯直播和有播直播的区别(腾讯直播和各大直播平台的对比)

    腾讯直播和有播直播的区别(腾讯直播和各大直播平台的对比)

  • 格式化模拟sd卡数据什么意思(格式化模拟sd卡数据是什么意思)

    格式化模拟sd卡数据什么意思(格式化模拟sd卡数据是什么意思)

  • 微信运动刷新时间(微信运动刷新频率)

    微信运动刷新时间(微信运动刷新频率)

  • ipad9是哪款(ipad9是不是苹果2019)

    ipad9是哪款(ipad9是不是苹果2019)

  • 苹果微信怎么切换手写(苹果微信怎么切换账号登陆)

    苹果微信怎么切换手写(苹果微信怎么切换账号登陆)

  • 华为开机密码忘记了怎么办(华为开机密码忘记了不想清除数据)

    华为开机密码忘记了怎么办(华为开机密码忘记了不想清除数据)

  • nova6se上市时间(华为nova6se上市时间及上市日期)

    nova6se上市时间(华为nova6se上市时间及上市日期)

  • 微信群头像怎么改(微信群头像怎么换成照片)

    微信群头像怎么改(微信群头像怎么换成照片)

  • 怎么添加文本框(秀米怎么添加文本框)

    怎么添加文本框(秀米怎么添加文本框)

  • 进程的静态实体由哪三部分组成(进程的静态实体主要由 、 和PCB组成)

    进程的静态实体由哪三部分组成(进程的静态实体主要由 、 和PCB组成)

  • 苹果c开头的什么货(苹果c开头什么意思)

    苹果c开头的什么货(苹果c开头什么意思)

  • 华为更换灭屏样式(华为灭屏显示怎么更换)

    华为更换灭屏样式(华为灭屏显示怎么更换)

  • 怎么搞qq彩色的名字(qq如何弄彩色字体)

    怎么搞qq彩色的名字(qq如何弄彩色字体)

  • 淘宝喵铺怎么进(淘宝喵铺怎样退出队伍)

    淘宝喵铺怎么进(淘宝喵铺怎样退出队伍)

  • 勿扰模式什么意思(勿扰模式打开是什么意思)

    勿扰模式什么意思(勿扰模式打开是什么意思)

  • oppo手机关机怎么关(oppo手机关机了怎么找到手机)

    oppo手机关机怎么关(oppo手机关机了怎么找到手机)

  • win10双击安装包没反应(win10双击安装包点击没有反应)

    win10双击安装包没反应(win10双击安装包点击没有反应)

  • 笔记本怎么切换输入法(笔记本怎么切换中文打字)

    笔记本怎么切换输入法(笔记本怎么切换中文打字)

  • iqoo耳机孔位置(iqoo耳机插孔)

    iqoo耳机孔位置(iqoo耳机插孔)

  • 手机怎么一秒充满电(怎样用手机一秒充满电)

    手机怎么一秒充满电(怎样用手机一秒充满电)

  • 微信如何看对方资料(微信如何看对方已读未读)

    微信如何看对方资料(微信如何看对方已读未读)

  • alp一al00是什么型号(alp-al00是华为什么型号)

    alp一al00是什么型号(alp-al00是华为什么型号)

  • Linux怎么查找影子文件并进入?(linux如何查找命令)

    Linux怎么查找影子文件并进入?(linux如何查找命令)

  • java桥接模式的优缺点(java 桥接模式)

    java桥接模式的优缺点(java 桥接模式)

  • 税务行政复议是税务行政复议机关的裁决活动
  • 计提存款利息
  • 以前年度免减的税怎么算
  • 用友T6自定结转怎样设置
  • 公司房租只有房租租赁协议无发票怎么入账
  • 公司购买金蝶属于什么费用
  • 劳务服务公司不含派遣,能接外包吗
  • 每月长摊金额如何分摊
  • 财产租赁合同印花税率多少
  • 应收账款的账面价值等于什么
  • 金融机构利息收入缴纳增值税
  • 公司买了样品又退掉了怎么做分录
  • 补贴收入计入哪个科目
  • 收到单位预交卖材料款如何做会计分录?
  • 以银行存款退还投资者股金
  • 小规模税局代增值税专用发票怎么交税
  • 增值税发票季报
  • 准则大家学第十二集
  • 高铁票可以要发票吗
  • 单位存款账户按用途分为
  • 行政单位以前年度会计错账调整
  • 所得税汇算清缴分录怎么做
  • 跨地区经营汇总纳税企业所得税
  • 1697510552
  • mac book air文件夹怎么重命名
  • 计提工资时个税是计提上月的吗
  • 溢价购入债权投资是为啥
  • 加班餐费税前扣除问题
  • 什么叫非同一控制下
  • 个人所得税必须交吗
  • 无形资产的会计处理
  • Android App中DrawerLayout抽屉效果的菜单编写实例
  • php如何创建文件
  • php中\n
  • php加密方式有哪些
  • vue 提示
  • 黄金海岸冲浪者沙滩
  • sql数据库语句基本语法
  • 小微企业资金数额
  • 【深度学习笔记】特征融合concat和add的区别
  • df 命令执行显示不出来
  • phpcms怎么样
  • 代管资金支出怎么做账
  • 以前年度损益调整属于哪类科目
  • 应税货物及劳务 增加
  • 财务报表的填写要求
  • 公户网银丢了
  • 欠款在公司注销怎么处理
  • 增值税及附加税费申报表附列资料一
  • 代收资金清算过程
  • 办理地税手续费
  • 补充登记法是全部都用蓝字吗
  • 营改增后建筑业怎么开票
  • 房企预收款如何缴纳企业所得税
  • 装修公司预收款要交增值税吗
  • 研发支出费用化支出期末有余额吗
  • 洗车发票税目
  • 销售如果对待不同客户
  • 培训费用支出
  • 无工资支出企业账务处理
  • 金蝶凭证做错了已经入账怎么更正
  • mysql优化的几种方法
  • Windows Server 2003下DHCP服务器的安装与简单配置图文教程
  • linux搭建gitlab
  • windrv.exe
  • windows server 2016正式版下载激活安装设置教程
  • win7 64位系统无法清空回收站的故障原因及解决方法
  • win 7快速启动
  • Win7旗舰版电脑亮度怎么调节?
  • win10开始菜单怎么打开
  • java timer
  • perl @inc
  • python自动截图
  • Python+Wordpress制作小说站
  • ThreadPool.RegisterWaitForSingleObject 设置等待超时事件
  • js 严格的迭代语句
  • jquery滚动插件
  • 增值税9%税率适用范围2023
  • 外地户口在绍兴读小学
  • 税务坚定理想信念心得体会
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设