Servlet其他关联类---ServletConfig类

1.ServletConfig介绍

a.ServletConfig是Servlet的配置参数对象,在Servlet的规范中,允许为每一个Servlet都提供一些初始化的配置。所以,每个Servlet都有一个自己的ServletConfig
b.作用:在Servlet的初始化时,把一些配置信息传递给Servlet
c.生命周期:和Servlet相同

2.在web.xml中配置方式如下
<!--    配置Servlet-->
    <servlet>
        <servlet-name>ServletConfigDemo</servlet-name>
        <servlet-class>com.itheima.ServletConfigDemo</servlet-class>
        <!--    配置ServletConfig的访问路径-->
         <!--  在初始化时传递-->
         <!--每一个init-param标签,就表示一个键值对-->
        <init-param>
            <param-name>encoding</param-name>
            <param-value>utf-8</param-value>
        </init-param>

        <init-param>
            <param-name>desc</param-name>
            <param-value>我是一个描述ServletConfig对象的属性</param-value>
        </init-param>
    </servlet>
3.ServletConfig的常用方法

【可以在Servlet类去获取ServletConfig对象,通过它的方法获取配置参数】
ServletConfig常用方法
getInitParameter(“encoding”)根据key获取value
getInitParameterNames()获取所有的key
servletConfig.getServletName()
servletConfig.getServletContext0()

public class ServletConfigDemo extends HttpServlet {
    //1.获取ServletConfig对象
    //方法一:声明ServletConfIg
   /* private ServletConfig servletConfig;
    //通过init方法,来对ServletConfig对象进行赋值
    @Override
    public void init() throws ServletException {
        this.servletConfig = servletConfig;
    }*/

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //方法二:getServletConfig()方法获取
        ServletConfig servletConfig = this.getServletConfig();
        String servletName = servletConfig.getServletName();
        System.out.println(servletName);
        //2.ServletConfig常用方法
        //(1)getInitParameter("encoding")根据key获取value
        String value = servletConfig.getInitParameter("encoding");
        System.out.println(value);
        //(2)getInitParameterNames()获取所有的key
        //返回一个枚举对象
        Enumeration<String> ParameterNames = servletConfig.getInitParameterNames();
        //遍历方法1:
        /*while (ParameterNames.hasMoreElements()) {
            //获取每一个key
            String paramName = ParameterNames.nextElement();
            //根据key获取每一个value
            String paramValue = servletConfig.getInitParameter(paramName);
            System.out.println(paramName + "..." + paramValue);
        }*/

        //遍历方法2:使用迭代器遍历
        Iterator<String> it = ParameterNames.asIterator();
        while (it.hasNext()){
            String paramName = it.next();
            String paramValue = servletConfig.getInitParameter(paramName);
            System.out.println(paramName + "..." + paramValue);
        }

    }
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req, resp);
    }
}

打印结果:
-------------------------------------------------------------------
ServletConfigDemo
utf-8
encoding...utf-8
desc...我是一个描述ServletConfig对象的属性
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陪雨岁岁年年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值