栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

四个类的对象: ServletConfig,ServletContext,HttpServletRequest,HttpServletResponse

Java 更新时间:发布时间: 百科书网 趣学号

1.ServletConfig

总结重点:ServletConfig对象其实就是携带着一个Servlet类的初始化参数信息,一个Servlet类对应一个 ServletConfig 对象

 容器(tomcat服务器)初始化 一个Servlet 时,会为这个 Servlet 创建一个 ServletConfig 对象,并将 ServletConfig 对象作为参数传递给 Servlet 。通过 这个传递过去的ServletConfig 对象即可获得当前 Servlet 的初始化参数信息。

一个 Servlet 只能对应一个 ServletConfig 对象,即 Servlet 的初始化参数仅对当前 Servlet 有效

public class ServletConfigDemo extends HttpServlet 
{
    private ServletConfig servletConfig;
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
    {
        //获取Servlet得名字
        this.servletConfig.getServletName();
    }
    @Override
    public void init(ServletConfig config) 
    {
        //从带参init方法中,提取ServletConfig对象
        this.servletConfig = config;
    }
}

2.ServletContext

tomcat容器会为每个 Web 应用(webapps 下的每个目录都是一个 Web 应用)创建一个唯一的 ServletContext 对象,该对象一般被称为“Servlet 上下文”

ServletContext 对象的生命周期从 Servlet 容器启动时开始,到容器关闭或应用被卸载时结束

Web 应用中的所有 Servlet 共享同一个 ServletContext 对象,不同 Servlet 之间可以通过 ServletContext 对象实现数据通讯

3.HttpServletRequest和HttpServletReponse

tomcat服务器接收到来自客户端的 HTTP 请求后,服务器会针对该请求分别创建一个 HttpServletRequest 对象和 HttpServletReponse 对象。

将 HttpServletRequest 对象和 HttpServletReponse 对象以参数的形式传入 service() 方法内,并调用该方法

 通过 HttpServletRequest 对象获取客户端信息以及请求的相关信息

请求处理完成后,将响应信息封装到 HttpServletReponse 对象中

当 Servlet 容器将响应信息返回给客户端后,HttpServletRequest 对象和 HttpServletReponse 对象被销毁

一个HttpServletRequest对象拥有的方法:

 

public class TestServlet extends HttpServlet
{
    private static final long serialVersionUID = 1L;
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
    {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter writer = response.getWriter();
        writer.println("请求方式:" + request.getMethod() + "
" + "客户端的 IP 地址:" + request.getRemoteAddr() + "
" + "应用名字(上下文):" + request.getContextPath() + "
" + "URI:" + request.getRequestURI() + "
" + "请求字符串:" + request.getQueryString() + "
" + "Servlet所映射的路径:" + request.getServletPath() + "
" + "客户端的完整主机名:" + request.getRemoteHost() + "
"); } protected void doPost(HttpServletRequest request, HttpServletResponse response) { doGet(request, response); } }

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/889175.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号