
ServletContext 对象
这里显示的服务器项目保存的路径
发布日期:2021-05-07 19:41:30
浏览次数:17
分类:精选文章
本文共 3008 字,大约阅读时间需要 10 分钟。
ServletContext 对象代表整个web应用,可以和程序的容器(服务器)来通信
文章目录
一、获取方法
(1)通过 request 对象获取:request.getServletContext();(2)通过 HttpServlet 获取:this.getServletContext(); -- 更常用
@WebServlet("/servletContextDemo1")public class ServletContextDemo1 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { /* ServletContext对象获取: 1. 通过request对象获取 request.getServletContext(); 2. 通过HttpServlet获取 this.getServletContext(); */ //1. 通过request对象获取 ServletContext context1 = request.getServletContext(); //2. 通过HttpServlet获取 ServletContext context2 = this.getServletContext(); System.out.println(context1); System.out.println(context2); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request,response); }}
二、功能
- 获取 MIME 类型:
* MIME类型:在互联网通信过程中定义的一种文件数据类型* 格式: 大类型/小类型 * 例如 text/html,image/jpeg* 获取:String getMimeType(String file)
@WebServlet("/servletContextDemo2")public class ServletContextDemo2 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //通过HttpServlet获取 ServletContext context = this.getServletContext(); //3. 定义文件名称 String filename = "a.jpg";//image/jpeg //4.获取MIME类型 String mimeType = context.getMimeType(filename); System.out.println(mimeType); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request,response); }}
- 域对象:共享数据
(1)setAttribute(String name,Object value)(2)getAttribute(String name)(3)removeAttribute(String name)* ServletContext对象范围:所有用户所有请求的数据
和 共享数据一样,但是比 request 作用范围更广,所以需要谨慎使用
- 获取文件的真实(服务器)路径
方法:String getRealPath(String path) * String b = context.getRealPath("/b.txt");//web目录下资源访问 * String c = context.getRealPath("/WEB-INF/c.txt");//WEB-INF目录下的资源访问 * String a = context.getRealPath("/WEB-INF/classes/a.txt");//src目录下的资源访问
@WebServlet("/demo")public class ResponseServlet2 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ServletContext context = this.getServletContext(); String path1 = context.getRealPath("/WEB-INF/classes/a.txt"); String path2 = context.getRealPath("/b.txt"); String path3 = context.getRealPath("/WEB-INF/c.txt"); System.out.println("a.txt --> " + path1); System.out.println("b.txt --> " + path2); System.out.println("c.txt --> " + path3); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); }}


发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年03月19日 09时45分09秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
关于Altium Designer 09导出BOM表不能正确分类问题
2021-05-08
Oracle 11G环境配置
2021-05-08
【Python】(十二)IO 文件处理
2021-05-08
【Oozie】(三)Oozie 使用实战教学,带你快速上手!
2021-05-08
师兄面试遇到这条 SQL 数据分析题,差点含泪而归!
2021-05-08
C语言的数值溢出问题(上)
2021-05-08
BottomNavigationView控件item多于3个时文字不显示
2021-05-08
函数指针的典型应用-计算函数的定积分(矩形法思想)
2021-05-08
8051单片机(STC89C52)以定时器中断模式实现两倒计时器异步计时
2021-05-08
用 wxPython 打印你的 App
2021-05-08
vue项目通过vue.config.js配置文件进行proxy反向代理跨域
2021-05-08
Linux下安装MySql过程
2021-05-08
android:使用audiotrack 类播放wav文件
2021-05-08
vue通过better-scroll 封装自定义的下拉刷新组件
2021-05-08
android解决:使用多线程和Handler同步更新UI
2021-05-08
vue自定义封装Loading组件
2021-05-08
Element UI 中动态路由的分析及实现
2021-05-08
使用springMVC配置视图管理器后找不到指定的页面
2021-05-08
关于js中对于Promise的深入理解
2021-05-08
杭电 2007 平方和与立方和(输入数据的大小顺序并不能默认)
2021-05-08