Servlet——ServletContext对象功能

本文介绍了如何获取ServletContext对象及其主要功能,包括获取MIME类型、作为域对象共享数据以及获取服务器上的文件真实路径。

一、Sercletcontext对象获取


        /*
            Sercletcontext对象获取
            1. 通过request对象获取
			request.getServletContext();
		    2. 通过HttpServlet获取
			this.getServletContext();
		*/
        ServletContext sc1 = request.getServletContext();
        ServletContext sc2 = this.getServletContext();

        System.out.println(sc1);
        System.out.println(sc2);
        System.out.println(sc1==sc1);

二、Sercletcontext对象功能

1. 获取MIME类型:

         /*
            Sercletcontext对象功能
            1. 获取MIME类型:
			* MIME类型:在互联网通信过程中定义的一种文件数据类型
				* 格式: 大类型/小类型   text/html		image/jpeg
			* 获取:String getMimeType(String file)
         */
        //2.通过httpservlet获取
        ServletContext sc2 = this.getServletContext();

        //3.定义文件名称
        String filename = "a.jpg";//image/jpeg
        //4获取MIME类型:
        String mimeType = getServletContext().getMimeType(filename);
        System.out.println(mimeType);

2、域对象:共享数据

        /*
            Sercletcontext对象功能
           2. 域对象:共享数据
			1. setAttribute(String name,Object value)
			2. getAttribute(String name)
			3. removeAttribute(String name)

			* ServletContext对象范围:所有用户所有请求的数据
         */
        //2.通过httpservlet获取
        ServletContext bc = this.getServletContext();
        //设置数据
         bc.setAttribute("msg","haha");
        //2.通过httpservlet获取
        ServletContext cd = this.getServletContext();
        //获取数据
        Object msg = cd.getAttribute("msg");
        System.out.println(msg);

3、获取文件的真实(服务器)路径

        //1. 方法:
        String getRealPath(String path)
        //2.通过httpservlet获取
        ServletContext ct = this.getServletContext();
        //ServletContext cd = this.getServletContext();
        String s = ct.getRealPath("/WEB-INF/classes/a.txt");
        System.out.println(s);

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值