位置: 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代码实现

  • 如何运用流行三法则,打造爆款营销活动?(如何运用流行理论来诱导消费者行为)

    如何运用流行三法则,打造爆款营销活动?(如何运用流行理论来诱导消费者行为)

  • 抖音上下两个视频怎么弄(抖音上下两个视频怎么做的呢)

    抖音上下两个视频怎么弄(抖音上下两个视频怎么做的呢)

  • 美版抖音怎么不能看(下了美版抖音打开什么都没有)

    美版抖音怎么不能看(下了美版抖音打开什么都没有)

  • 抖音手机号注销了还能登录吗(抖音手机号注销了还能重新注册吗)

    抖音手机号注销了还能登录吗(抖音手机号注销了还能重新注册吗)

  • g0开头的苹果是哪里产的(g0开头的苹果是最差的吗)

    g0开头的苹果是哪里产的(g0开头的苹果是最差的吗)

  • 键盘@按哪个键(键盘按哪个键是截图)

    键盘@按哪个键(键盘按哪个键是截图)

  • 苹果腾讯会议没有共享屏幕(苹果腾讯会议没有声音)

    苹果腾讯会议没有共享屏幕(苹果腾讯会议没有声音)

  • 存储权限是干什么用的(存储权限什么意思)

    存储权限是干什么用的(存储权限什么意思)

  • 微博怎么看手机通讯录好友(微博怎么看手机号绑定几个账号)

    微博怎么看手机通讯录好友(微博怎么看手机号绑定几个账号)

  • 微信怎么设置输入状态不可见(微信怎么设置输入中不显示)

    微信怎么设置输入状态不可见(微信怎么设置输入中不显示)

  • 微信删除该聊天群没了(微信删除该聊天是什么意思)

    微信删除该聊天群没了(微信删除该聊天是什么意思)

  • 电话一直关机怎么回事(拨打号码一直关机)

    电话一直关机怎么回事(拨打号码一直关机)

  • iphone11和x区别(iphone11与x的区别)

    iphone11和x区别(iphone11与x的区别)

  • 苹果手机不读卡是什么原因(苹果手机不读卡怎么办)

    苹果手机不读卡是什么原因(苹果手机不读卡怎么办)

  • 抖音视频为什么没有播放量(抖音视频为什么不能转发到微信)

    抖音视频为什么没有播放量(抖音视频为什么不能转发到微信)

  • 华为p30pro可以投影吗(华为p30por怎么投影)

    华为p30pro可以投影吗(华为p30por怎么投影)

  • 手机摄像4k和1080p的区别(手机摄像4k和1080p哪个好)

    手机摄像4k和1080p的区别(手机摄像4k和1080p哪个好)

  • qq收藏怎么保存视频(qq收藏怎么保存成音频文件)

    qq收藏怎么保存视频(qq收藏怎么保存成音频文件)

  • ipadmini5蜂窝版什么时候发售(ipad mini5蜂窝版网速快吗)

    ipadmini5蜂窝版什么时候发售(ipad mini5蜂窝版网速快吗)

  • 华为p30p怎么截屏(华为p30,怎么截图)

    华为p30p怎么截屏(华为p30,怎么截图)

  • 快手怎么下滑切换视频(快手怎么一下往下滑)

    快手怎么下滑切换视频(快手怎么一下往下滑)

  • G40/50-70、SR1000随机Linux改安装Win7系统的实现方法

    G40/50-70、SR1000随机Linux改安装Win7系统的实现方法

  • 前端面试:浅拷贝和深拷贝的区别?(前端常见面试)

    前端面试:浅拷贝和深拷贝的区别?(前端常见面试)

  • 2020年委托加工的税率是多少
  • 租的房子装修费如何入账
  • 发票上有字迹可以拿去作废吗
  • 不动产统一发票图片
  • 发票中奖要交税吗
  • 电视台广告费可以抵扣吗
  • 评估增值的差额是什么
  • 公司职员聚餐取个名字
  • 应交税费算什么费用
  • 涉农贷款损失
  • 收到退以前年度所得税
  • 成本费用跨年度怎么计算
  • 福利费提取后未使用能否税前扣除?
  • 制造费用年末需要结转吗
  • 总部员工调往下属单位
  • 财报申报逾期可不可以补报
  • 资询服务收入算服务还是劳务
  • 工会经费可以用于哪些支出
  • 加工业务怎么报税的
  • 企业偷税行为
  • 备用金转账个人能转吗
  • 可转换公司债券可以在一定程度上解决的问题是
  • 其他应收款计提坏账比例
  • 三星笔记本预装系统
  • win7宽带连接错误651
  • 什么是跨区域涉税业务
  • php中this的用法
  • php的数组函数
  • 长期借款利息和短期借款利息都应计入财务费用
  • PHP:pcntl_signal()的用法_PCNTL函数
  • CodeIgniter扩展核心类实例详解
  • WordPress中设置视频循环播放
  • Vue3通透教程【一】Vue3现状—必然趋势?
  • php执行系统命令函数
  • layui 树形
  • 电子客票行程单怎么获取
  • 企业自建房出售给员工个人后还需要缴纳土地使用税么
  • 11月资产负债表
  • window批处理文件
  • 固定资产折旧计算表模板
  • 现金折扣的账务处理最新
  • 长期待摊费用的摊销期限应该是
  • 用友u8财务报表打印设置在哪
  • 工商企业年报网上申报流程
  • 个人所得税的征收
  • 购进业务:从国内购进生产用原材料
  • 内含增长率的推导
  • 应收账款项目期末余额怎么计算
  • 出口样品未报关处罚
  • 自己公司刷自己的信用卡
  • 购入土地使用权以什么为计税依据
  • 农行公户怎么给公户转账
  • 流动资产合计怎么算
  • mysql中json格式是多少长度
  • centos7 nis
  • win7复制文件到system32没有权限
  • win10周年版
  • win8怎么看电脑wifi密码
  • windows10一分钟重启解决
  • unity3d ide
  • android5种布局
  • Android游戏开发案例教程小小弹球
  • 安装两个linux
  • bat 参数个数
  • python中列表删除
  • javascript如何学
  • linux共享内存最大值
  • shell脚本批处理
  • jquery form序列化
  • javascript高级程序设计pdf百度云
  • 简述javascript
  • javascript获取数据
  • jquery遍历json对象
  • 青岛电子税务局电话人工客服电话
  • 税务总局转变税收征管方式
  • 纳服的拼音
  • 公司欠税无力偿还怎么办
  • 忘记了密码怎么打开手机
  • 初级会计职称可以挂靠吗
  • 注销的卡补回来还能恢复以前的套餐吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设