Servlet总结-ServletConfig、ServletContext

创建Servlet

  1. 创建一个类继承javax.servlet.http.HttpServlet类
  2. 覆盖doGet(), doPost() 方法
  3. 在web.xml中配置servlet

    <servlet>
        <servlet-name>Index</servlet-name>
        <servlet-class>com.zjl.main.IndexServlet</servlet-class>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>Index</servlet-name>
        <url-pattern>/index</url-pattern>
    </servlet-mapping>

    Tomcat容器访问Servlet的步骤:
    1. 客户端发送请求 http://www.xxx.com/index
    2. Tomcat容器 通过url-pattern 即/index,找到servlet-name,再有此找到servlet-class
    3. 创建Servlet对象,调用init() 方法
    4. Tomcat容器创建request和responce两个对象作为参数, 新开一个线程,运行service() 方法
    5. service() 方法内部根据请求的方法,调用不同的方法处理请求

ServletConfig 和 ServletContext

ServletConfig 关于servlet 的一些参数
1. 获取ServletConfig对象 在doXXX() 方法中调用 getServletConfig() 
2. 获取在web.xml中配置的参数
    // 根据参数名,获取参数值
    public String getInitParameter(String name);
    // 获取所有的参数名
    public Enumeration<String> getInitParameterNames();
    // 获取ServletContext对象
    public ServletContext getServletContext();
    // 获取servlet的名字
    public String getServletName();
    <servlet>
        <servlet-name>Index</servlet-name>
        <servlet-class>com.zjl.main.IndexServlet</servlet-class>
     <init-param>
            <param-name>name01</param-name>
            <param-value>value01</param-value>
      </init-param>
    </servlet>
ServletContext

ServletContext 是整个web应用的上下文

  1. 获取ServletContext对象: 在doXXX() 方法中调用getServletContext() 方法,获取通过ServletConfig对象调用getServletContext()方法获取
  2. ServletContext对象中的方法:
    // 获取在web.xml文件中配置的初始化参数
    public String getInitParameter(String name);
    // 同ServletConfig对象类似
    public Enumeration getInitParameterNames();
<context-param>
    <param-name>context_name</param-name>
    <param-value>context_value</param-value>
  </context-param>
// 访问资源文件
// 返回资源文件的URL对象,其中path参数必须以 / 开头,代表应用的根目录
public URL getResource(String path) throws MalformedURLException;
// 返回资源文件的流对象
public InputStream getResourceAsStream(String path);

// 设置Attribute,保存对象,使其在其他Servlet中也可以被访问
// 设置属性
public void setAttribute(String name, Object object);
// 获取属性
public Object getAttribute(String name);
public Object getAttribute(String name);
// 移除属性
public void removeAttribute(String name);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值