servlet学习:ServletConfig和ServletContex

ServletConfig用于获取web.xml中针对每个servlet的配置信息,如初始化参数,提高了程序灵活性。ServletConfig通过getInitParameter获取配置数据。而ServletContext代表整个Web站点,解决不同用户间的数据共享,实现Servlet间通信。它能获取全局配置参数,存储和获取数据,以及提供资源的绝对路径和输入流。此外,还可以通过getServletContext从不同的途径获取。

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

ServletConfig

获取web.xml中为每一个servlet单独配置的数据。

将数据放在web.xml中,能够提高我们程序的灵活性。

在web.xml中添加参数

<servlet>
    <servlet-name>my</servlet-name>
    <servlet-class>com.servlet.myservlet</servlet-class>
    <init-param>
        <param-name>user</param-name>
        <param-value>shuai</param-value>
    </init-param>
</servlet>

获取config对象

ServletConfig sc = this.getServletConfig();

获取web.xml中的配置数据

String code = sc.getInitParameter("user")

ServletContex

当Tomcat启动的时候,就会创建一个ServletContext对象。它代表着当前web站点。

能够解决不同用户之间的数据共享问题。

实现Servlet之间的通讯

获取servletContex

方法一共有三种:

ServletContext sc = this.getServletContext();
ServletContext sc = this.getServletConfig().getServletContext();
ServletContext sc = req.getSession().getServletContext();

数据存储

sc.setAttribute(name, value);

获取数据

sc.getAttribute(name);

获取项目web.xml中的全局配置数据

在web.xml中存全局配置

<context-param>
    <param-name>user</param-name>
    <param-value>shuai</param-value>
</context-param>

使用Contex获取

//获取web.xml中的全局配置
String str = sc.getInitParameter("name");

//返回所有键名
Enumeration<String> strs = sc.getInitParameterNames();

获取项目根目录下的绝对路径

String path = sc.getRealPath("/doc/1.txt");

获取项目中的资源流对象

在根目录下
InputStream is = sc.getResourceAsStream("/doc/1.txt");
在src目录下
InputStream is = sc.getResourceAsStream("1.png");
在WEB-INF目录下
InputStream is = sc.getResourceAsStream("1.png");

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值