Jsp 中的getServletContext全局数据共享

ops/2024/9/23 14:27:42/

servletContext作用于不同用户之上

1. 一个用户将数据保存到了servletContext中,

java">// getcontext的servlet程序
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
ServletContext context = this.getServletContext();  //通过全局变量servletcontext 拿到另一个servlet 不同url中usernameString username = (String) context.getAttribute("username");resp.setContentType("text/html");  // 这里set浏览器的数据格式后可以拿到其username ,非则会nullresp.setCharacterEncoding("utf-8");   // 这里是修改数据格式适应浏览器编码,使得文本内容可以正常显示System.out.println("岗位"+username);  // 后台显示打印resp.getWriter().println("岗位"+username);  // 浏览器页面显示

通过不同的servlet来实现彼此之间的数据共享

每一个web程序都会创建一个对应的servletContext 对象, 它表示当前的web应用,做到了共享数据, 在一个servlet中保存数据, 在另一个servlet 中拿数据

java">// setcontext的servlet的java程序
@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {resp.setContentType("text/html");resp.setCharacterEncoding("utf-8");ServletContext context = this.getServletContext();String username = "数据开发";context.setAttribute("username",username); // 将数据保存到servletcontext中,名字为username , 值为username

写完servlet程序后去注册servlet

web.xml  对servlet 的注册配置以及servlet——mapping 配置<servlet><servlet-name>hello</servlet-name><servlet-class>com.rong.servlet.servletHello</servlet-class></servlet><servlet-mapping><servlet-name>hello</servlet-name><url-pattern>/hello</url-pattern></servlet-mapping><servlet><servlet-name>getc</servlet-name><servlet-class>com.rong.servlet.dogetc</servlet-class></servlet><servlet-mapping><servlet-name>getc</servlet-name><url-pattern>/getc</url-pattern></servlet-mapping>

 eg: 如何servlet 没有先保存数据就去get username数据是获取不到的

eg :先去保存数据,然后在去拿数据即可

上述中的username保存的样式是数据开发的str 

这样就实现了servletContext 的数据共享在不同的servlet 


http://www.ppmy.cn/ops/5974.html

相关文章

CommunityToolkit.Mvvm笔记---AsyncRelayCommand

AsyncRelayCommand 是 CommunityToolkit.Mvvm 中的一个功能&#xff0c;专门设计用来处理异步操作。它是 RelayCommand 的一个变体&#xff0c;提供了对异步任务的支持&#xff0c;允许开发者在 MVVM&#xff08;Model-View-ViewModel&#xff09;模式中方便地实现异步命令。使…

什么是三高架构

三高架构是指在软件系统设计与开发中&#xff0c;注重解决高并发性、高可用性和高性能的架构设计模式。 高并发性&#xff1a;指系统能够处理大量并发请求的能力。在高并发场景下&#xff0c;系统需要具备有效的并发处理机制&#xff0c;以保证系统能够快速、准确地响应大量并…

docker-compose 安装MongoDB续:创建用户及赋权

文章目录 1. 问题描述2. 分析2.1 admin2.2 config2.3 local 3. 如何连接3.解决 1. 问题描述 在这一篇使用docker-compose创建MongoDB环境的笔记里&#xff0c;我们创建了数据库&#xff0c;但是似乎没有办法使用如Robo 3T这样的工具去连接数据库。连接的时候会返回这样的错误&…

git 小记

一、 github新建仓库 git clone 。。。。。。。。。。。 &#xff08;增删查补&#xff0c;修改&#xff09; git add . git commit -m "修改” git push (git push main) 二、branch 分支 branch并不难理解&#xff0c;你只要想像将代码拷贝到不同目录…

【24届数字IC秋招总结】正式批面试经验汇总6——禾赛

文章目录 一、禾赛-数字IC验证工程师1.1 一面面试问题1.2 二面面试问题一、禾赛-数字IC验证工程师 面试时间:9.19 9.25 1.1 一面面试问题 1、自我介绍 2、研究生课题 3、build_phase从上至下还是从下至上 4、哪些phase是task phase 5、perl脚本做了什么 6、整个验证环境是怎…

NASA数据集——TANSO-FTS 运行前 11 年收集的测量数据中得出二氧化碳(CO2)干空气摩尔分数(XCO2)的估计值

ACOS GOSAT/TANSO-FTS Level 2 bias-corrected XCO2 and other select fields from the full-physics retrieval aggregated as daily files V7.3 (ACOS_L2_Lite_FP) at GES DISC 简介 ACOS Lite 文件包含经过偏差校正的 XCO2 以及其他选定字段的每日汇总文件。ACOS 2 级标准…

【wpf】ObservableCollection 跨线程报错问题

背景 ObservableCollection 我们之前介绍过他和List的区别。ObservableCollection 的好处在于&#xff0c;当集合发生变化时&#xff0c;能发送通知通知界面发生相应的更改。但是ObservableCollection 有个弊端。无法在非UI线程中访问。 要么就是通知失效了&#xff0c;要么就…

适用于Windows电脑的最佳数据恢复软件是哪些?10佳数据恢复软件

丢失我们系统中可用的宝贵信息是很烦人的。我们可以尝试几种手动方法来重新获取丢失的数据。然而&#xff0c;当我们采用非自动方法来恢复数据时&#xff0c;这是一项令人厌烦和乏味的工作。在这种情况下&#xff0c;我们可以尝试使用一些正版硬盘恢复软件进行数据恢复。此页面…