Servlet的基本使用/Servlet接口/Servlet生命周期/ServletConfig

Servlet的基本使用/Servlet接口/Servlet生命周期/ServletConfig

什么是 Servlet

Servlet 是 Java Web 开发的基石,与平台无关的服务器组件,它是运行在 Servlet 容器/Web 应用服务器/Tomcat,负责与客户端进行通信。

Servlet 的功能: 1、创建并返回基于客户请求的动态 HTML ⻚面。 2、与数据库进行通信。

如何使用 Servlet

Servlet 本身是一组接口,自定义一个类,并且实现 Servlet 接口,这个类就具备了接受客户端请求以及做出响应的功能

package com.javaweb.servlet;
import javax.servlet.*;
import java.io.IOException;

public class MyServlet implements Servlet {

    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
        System.out.println("初始化init方法.....");
    }

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

    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        String id = servletRequest.getParameter("id");
        System.out.println("我是Servlet,已经接收到客户端发来的请求参数id:" + id);
        servletResponse.setContentType("text/html;charset=utf-8");
        servletResponse.getWriter().write("hello world");
        System.out.println("调用了service方法....");

    }

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

    @Override
    public void destroy() {
        System.out.println("调用了destroy方法.....");
    }
}

浏览器不能直接访问 Servlet 文件,只能通过映射的方式来间接访问 Servlet,映射需要开发者手动配置,有两种配置方式。

基于 XML 文件的配置方式

<servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>com.javaweb.servlet.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>/demo</url-pattern>
</servlet-mapping>

基于注解的方式

@WebServlet("/demo")
public class MyServlet implements Servlet {

}

上述两种配置方式结果完全一致,将 demo 与 MyServlet 进行映射,即在浏览器地址栏中直接访问demo 就可以映射到 MyServlet

Servlet 的生命周期

ServletConfig对象

该接口是用来描述 Servlet 的基本信息的。
ServletConfig 和 ServletContext 的区别:

ServletConfig 作用于某个 Servlet 实例,每个 Servlet 都有对应的 ServletConfig,ServletContext 作用于整个 Web 应用,一个 Web 应用对应一个 ServletContext,多个 Servlet 实例对应一个ServletContext。一个是局部对象,一个是全局对象

分享到 :

发表评论

登录... 后才能评论