JAVA Servlet-ServletContext 对象 笔记

本文详细介绍了ServletContext对象的作用及其获取方法,并对比了三种域对象的特点。同时提供了常用方法的使用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ServletContext对象

(一)每一个web应用都有且仅有一个ServletContext对象,又称Application对象,从名称中可知,该对象是与应用程序相关的。在WEB容器启动的时候,会为每一个WEB应用程序创建一个对应的ServletContext对象。
(二)该对象有两大作用,第一、作为域对象用来共享数据,此时数据在整个应用程序中共享;第二、该对象中保存了当前应用程序相关信息。例如可以通过getServerlnfo()方法获取当前服务器信息,getRealPath(Stringpath)获取资源的真实路径等。

ServletContext对象的获取

四种获取方式

        ServletContext context=request.getServletContext();//常用第一种
        
        ServletContext context1=getServletContext();//第二种
        
        ServletContext context2=request.getSession().getServletContext();//没有request 可以用 Session方式
        
        ServletConfig config=getServletConfig();//第四种
        ServletContext context3=config.getServletContext();

常用方法(获取和设置)

        context.setAttribute("name","张三");//设置
        
        context.getAttribute("name");//获取
        
        context.removeAttribute("name");//移除

Servlet 中的三大域对象(数据共享,数据保存)

request域对象Session域对象ServletContext域对象
一次请求中有效。请求转发有效,重定向无效一次会话中有效。请求转发,重定向都有效 ,Session销毁后失效在整个应用程序中有效,服务器关闭后失效

总结

可以通过ServletContext来存取数据,可以使某个数据在整个应用程序中共享,但不建议存放过多的数据,因为ServletContext中的数据一旦储存进去就没办法进行手动移除,会一直保存。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值