电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

深入了解Java ServletContext

瀏覽:56日期:2022-08-27 15:50:21

什么是ServletContext?

根據字面意思即Servlet上下文

深入了解Java ServletContext

服務器會為每一個工程創建一個對象,這個對象就是ServletContext對象,這個對象是全局唯一的,工程內部的所有servlet都共享這個對象,所有應用程序共享對象

深入了解Java ServletContext

下面用一段簡單的代碼來證明一下

import javax.servlet.ServletContext;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;@WebServlet('/ServletContext2')public class ServletContext2 extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { ServletContext servletContext = this.getServletContext(); System.out.println('ServletContext2的地址:'); System.out.println(servletContext); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doGet(req, resp); }}

import javax.servlet.RequestDispatcher;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;@WebServlet('/ServletContext')public class ServletContext extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { javax.servlet.ServletContext servletContext = this.getServletContext(); System.out.println('ServletContext2的地址:'); System.out.println(servletContext); RequestDispatcher servletContext2 = req.getRequestDispatcher('ServletContext2'); servletContext2.forward(req,resp); }}

可以看到二者的地址一模一樣

深入了解Java ServletContext

ServletContext對象的生命周期

誕生:web部署到服務器上,啟動服務器,此時上下文環境對象創建,只要tomcat服務器不關閉,上下文環境對象就一直存在

銷毀:關閉服務器或者是從web服務器上卸載該程序的時候,該對象銷毀

怎么創建ServletContext對象?

方法一:

javax.servlet.ServletContext servletContext = this.getServletContext();

方法二:

javax.servlet.ServletContext servletContext1 = req.getServletContext();

方法三:

javax.servlet.ServletContext servletContext3 = this.getServletConfig().getServletContext();

ServletContext對象的作用與相關方法

1.是一個域對象*

什么是域:域其實就是一個map結構,及存入一個鍵值對,來存儲獲取數據作用范圍:本工程內部域對象可以被本工程內所有的servlet對象共享,因為一個工程只有一個servletcontext對象

方法介紹:存儲數據: void setAttribute(String var1, Object var2);

移除數據: void removeAttribute(String var1);

獲取數據: Object getAttribute(String var1);1.由于取出的是一個Object類型,需要強轉2.如果指定的屬性名不存在,則返回null

2.可以獲取文件的真實路徑

真實路徑:即部署在服務器是的路徑String getRealPath() 獲取文件的真實路徑

不同目錄下訪問資源的方式不同

//src下的資源訪問 String realPath = servletContext.getRealPath('/WEB-INF/classes/a.text'); System.out.println(realPath);//WEB-INF下的資源訪問 String realPath1 = servletContext.getRealPath('/WEB-INF/b.text'); System.out.println(realPath1); //web目錄下的資源訪問 String realPath2 = servletContext.getRealPath('/c.text'); System.out.println(realPath2);

代碼

import javax.servlet.RequestDispatcher;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;@WebServlet('/ServletContext')public class ServletContext extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { javax.servlet.ServletContext servletContext = this.getServletContext(); //src下的資源訪問 String realPath = servletContext.getRealPath('/WEB-INF/classes/a.text'); System.out.println(realPath); //WEB-INF下的資源訪問 String realPath1 = servletContext.getRealPath('/WEB-INF/b.text'); System.out.println(realPath1); //web目錄下的資源訪問 String realPath2 = servletContext.getRealPath('/c.text'); System.out.println(realPath2); }}

結果

深入了解Java ServletContext

3.獲得MIME類型

s什么是MIME類型,是在互聯網通信過程中定義等等一種文件數據類型格式:大類型/小類型 image/jpeg獲取: String getMimeType(String file)

代碼如下

import javax.servlet.RequestDispatcher;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;@WebServlet('/ServletContext')public class ServletContext extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { javax.servlet.ServletContext servletContext = this.getServletContext(); String filename='a.jpg'; String mimeType = servletContext.getMimeType(filename); System.out.println(mimeType); }}

結果

深入了解Java ServletContext

以上就是ServletContext對象的一些基礎知識,如有錯誤還請各位批評指正,喜歡我的文章可以點贊呀,也可以關注我,我會經常跟新文章

以上就是深入了解Java ServletContext的詳細內容,更多關于Java ServletContext的資料請關注好吧啦網其它相關文章!

標簽: Java
相關文章:
主站蜘蛛池模板: 中国产业发展研究网 - 提供行业研究报告 可行性研究报告 投资咨询 市场调研服务 | 哈尔滨京科脑康神经内科医院-哈尔滨治疗头痛医院-哈尔滨治疗癫痫康复医院 | 环比机械| 学生作文网_中小学生作文大全与写作指导 | 济南菜鸟驿站广告|青岛快递车车体|社区媒体-抖音|墙体广告-山东揽胜广告传媒有限公司 | 工业硝酸钠,硝酸钠厂家-淄博「文海工贸」 | 合肥展厅设计-安徽展台设计-合肥展览公司-安徽奥美展览工程有限公司 | 地图标注-手机导航电子地图如何标注-房地产商场地图标记【DiTuBiaoZhu.net】 | 100_150_200_250_300_350_400公斤压力空气压缩机-舰艇航天配套厂家 | 厦门网站建设_厦门网站设计_小程序开发_网站制作公司【麦格科技】 | 餐饮小吃技术培训-火锅串串香培训「何小胖培训」_成都点石成金[官网] | 西门子伺服电机维修,西门子电源模块维修,西门子驱动模块维修-上海渠利 | 温州中研白癜风专科_温州治疗白癜风_温州治疗白癜风医院哪家好_温州哪里治疗白癜风 | 纳米二氧化硅,白炭黑,阴离子乳化剂-臻丽拾科技 | 校园气象站_超声波气象站_农业气象站_雨量监测站_风途科技 | 长沙广告公司|长沙广告制作设计|长沙led灯箱招牌制作找望城湖南锦蓝广告装饰工程有限公司 | 色谱柱-淋洗液罐-巴罗克试剂槽-巴氏吸管-5ml样品瓶-SBS液氮冻存管-上海希言科学仪器有限公司 | 骨灰存放架|骨灰盒寄存架|骨灰架厂家|智慧殡葬|公墓陵园管理系统|网上祭奠|告别厅智能化-厦门慈愿科技 | 风信子发稿-专注为企业提供全球新闻稿发布服务 | 上海璟文空运首页_一级航空货运代理公司_机场快递当日达 | 外贸网站建设-外贸网站设计制作开发公司-外贸独立站建设【企术】 | 361°官方网站 | 面粉仓_储酒罐_不锈钢储酒罐厂家-泰安鑫佳机械制造有限公司 | 聚合氯化铝厂家-聚合氯化铝铁价格-河南洁康环保科技 | 拉曼光谱仪_便携式|激光|显微共焦拉曼光谱仪-北京卓立汉光仪器有限公司 | 青州搬家公司电话_青州搬家公司哪家好「鸿喜」青州搬家 | 【官网】博莱特空压机,永磁变频空压机,螺杆空压机-欧能优 | 定制异形重型钢格栅板/钢格板_定做踏步板/排水沟盖板_钢格栅板批发厂家-河北圣墨金属制品有限公司 | 丹佛斯变频器-丹佛斯压力开关-变送器-广州市风华机电设备有限公司 | 光环国际-新三板公司_股票代码:838504 | 一点车讯-汽车网站,每天一点最新车讯! | 杜康白酒加盟_杜康酒代理_杜康酒招商加盟官网_杜康酒厂加盟总代理—杜康酒神全国运营中心 | 酒糟烘干机-豆渣烘干机-薯渣烘干机-糟渣烘干设备厂家-焦作市真节能环保设备科技有限公司 | 天空彩票天下彩,天空彩天空彩票免费资料,天空彩票与你同行开奖,天下彩正版资料大全 | 桐城新闻网—桐城市融媒体中心主办 | 交流伺服电机|直流伺服|伺服驱动器|伺服电机-深圳市华科星电气有限公司 | 东莞压铸厂_精密压铸_锌合金压铸_铝合金压铸_压铸件加工_东莞祥宇金属制品 | 硬质合金模具_硬质合金非标定制_硬面加工「生产厂家」-西迪技术股份有限公司 | 民用音响-拉杆音响-家用音响-ktv专用音响-万昌科技 | 神超官网_焊接圆锯片_高速钢锯片_硬质合金锯片_浙江神超锯业制造有限公司 | 温控器生产厂家-提供温度开关/热保护器定制与批发-惠州市华恺威电子科技有限公司 |