Servlet-ServletConfig类

ServletConfig类

从类名上来看就知道是Servlet程序的配置信息类

 

Servlet程序和ServletConfig对象都是由tomcat创建,我们负责使用

Servlet程序默认在第一次访问时创建,ServletConfig是每个Servlet程序创建时,就创建一个对应的ServletConfig对象。

 

三大作用

1.可以获取Servlet程序的别名Servlet-name的值

2.获取初始化参数init-param

3.获取ServletContext对象

 

相关代码

package com.orzjiangxiaoyu.config.servlet;

import jakarta.servlet.*;

import java.io.IOException;

/**ServletConfig类
 * 从类名上来看就知道是Servlet程序的配置信息类
 * Servlet程序和ServletConfig对象都是由tomcat创建,我们负责使用
 * Servlet程序默认在第一次访问时创建,ServletConfig是每个Servlet程序创建时,就创建一个对应的ServletConfig对象。
 *
 * 三大作用
 * 1.可以获取Servlet程序的别名Servlet-name的值
 * 2.获取初始化参数init-param
 * 3.获取ServletContext对象
 * @author orz
 * @create 2020-09-10 15:47
 */
public class ConfigServlet implements Servlet {

    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
        //ServletConfig
//        1.可以获取Servlet程序的别名Servlet-name的值
        System.out.println("Servlet程序的别名:"+servletConfig.getServletName());
//        2.获取初始化参数init-param
//        <init-param>
//            <!--    参数名        -->
//            <param-name>username</param-name>
//            <!--    参数值        -->
//            <param-value>orzjiangxiaoyu</param-value>
//        </init-param>
//        <init-param>
//            <param-name>password</param-name>
//            <param-value>root</param-value>
//        </init-param>
        System.out.println("username:"+servletConfig.getInitParameter("username"));
        System.out.println("password:"+servletConfig.getInitParameter("password"));

//        3.获取ServletContext对象
        ServletContext servletContext = servletConfig.getServletContext();
        System.out.println("ServletContext对象:"+servletContext);

    }

    @Override
    public ServletConfig getServletConfig() {
        return null;
    }

    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        //获取Servlet程序的ServletConfig
        //方法getServletConfig()
        ServletConfig servletConfig = getServletConfig();
        System.out.println("Servlet程序的别名:"+servletConfig.getServletName());

        System.out.println("ConfigServlet");
    }

    @Override
    public String getServletInfo() {
        return null;
    }

    @Override
    public void destroy() {

    }
}
View Code

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <!--    servlet标签给Tomcat配置servlet程序-->
    <servlet>
        <!--    servlet-name标签 给servlet程序起一个别名(一般是类名)    -->
        <servlet-name>ConfigServlet</servlet-name>
        <!--  servlet-class标签 是Servlet程序全类名      -->
        <servlet-class>com.orzjiangxiaoyu.config.servlet.ConfigServlet</servlet-class>
        <!--   init-param是初始化参数    -->
        <init-param>
            <!--    参数名        -->
            <param-name>username</param-name>
            <!--    参数值        -->
            <param-value>orzjiangxiaoyu</param-value>
        </init-param>
        <init-param>
            <param-name>password</param-name>
            <param-value>root</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>ConfigServlet</servlet-name>
        <url-pattern>/configServlet</url-pattern>
    </servlet-mapping>
</web-app>
View Code

 

 
posted @ 2020-09-10 21:35  orz江小鱼  阅读(251)  评论(0编辑  收藏  举报