ServletConfig接口

ServletConfig

  • Tomcat服务器实现了Servlet规范,专门写了一个ServletConfig接口的实现类。
  • Tomcat服务器是实现了Servlet规范和Jsp规范的容器。
  • Java Web程序员一直是面向ServletConfig接口完成调用,不需要关系具体的实现类。
  • ServletConfig对象中封装了一个Servlet对象的配置信息,配置信息在web.xml文件中(或者注解)。

ServletConfig 接口中的方法:

  • String getServletName();

    ServletContext getServletContext();

    String getInitParameter(String var1);

    Enumeration getInitParameterNames();

代码:

package test1;

import javax.servlet.*;
import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;
import javax.servlet.jsp.tagext.VariableInfo;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;


/**
 * Created by hasee
 * on 2017/4/9.
 */
@WebServlet(name = "cymone",urlPatterns = "/a", initParams=
        {@WebInitParam(name="cym1", value="今天星期三"),
                @WebInitParam(name="cym2", value="今天")})

public class Servletcym implements Servlet {
    private ServletConfig servletConfig;

    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
        //目的:可以在service中使用servletConfig
        this.servletConfig = servletConfig;
    }

    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        servletResponse.setContentType("text/html; Charset = UTF-8");
        PrintWriter writer = servletResponse.getWriter();
        //获取ServletConfig
        ServletConfig config = getServletConfig();
        //通过name获取Value
//        String cym1 = config.getInitParameter("cym1");
//        String cym2 = config.getInitParameter("cym2");
//        writer.print(cym1+"  "+cym2);
        Enumeration<String> names = config.getInitParameterNames();
        while (names.hasMoreElements()) {
            String name = names.nextElement();
            String value = config.getInitParameter(name);
            writer.print(name+"="+value);//cym1=今天星期三  cym2=今天
            writer.print("</br>");
        }
        //获取Servlet的name
        String name = config.getServletName();
        writer.print("name"+name);

    }

    @Override
    public ServletConfig getServletConfig() {
        //让子类可以使用servletConfig,
        // 通过getServletConfig方法获取servletConfig对象
        return servletConfig;
    }

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

    @Override
    public void destroy() {

    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值