代码改变世界

JavaWeb--Servlet - 教程

2025-11-21 21:51  tlnshuju  阅读(6)  评论(0)    收藏  举报

JavaWeb–Servlet

1.Servlet 概述

1.1 什么是 Servlet?

  • Server + Applet,是服务器端的 Java 应用程序
  • 必须使用 Servlet API 才能称为 Servlet
  • 作用:接收请求、调用 JavaBean 处理、决定显示页面

1.2 JSP 与 Servlet 的关系

在这里插入图片描述

2.Servlet API

2.1 核心接口与类

类/接口说明
javax.servlet.Servlet所有 Servlet 的基础接口
javax.servlet.GenericServlet与协议无关的通用 Servlet
javax.servlet.http.HttpServlet基于 HTTP 协议的 Servlet(常用)

2.2创建 Servlet 的三种方式

  1. 实现 Servlet 接口
  2. 继承 GenericServlet
  3. 继承 HttpServlet 类(推荐)

3.Servlet 生命周期

  • 加载与实例化:容器创建 Servlet 实例
  • 初始化:调用 init() 方法(仅一次)
  • 处理请求:调用 service() 方法(多次)
  • 销毁:调用 destroy() 方法(服务器停止时)

4.Servlet 核心方法

4.1方法

  • init():Servlet的初始化方法,仅仅会执行一次

    void init(ServletConfig config)
  • service():处理请求和生成响应

    void service(ServletRequest req, ServletResponse res)
  • destroy():在服务器停止并且程序中的Servlet对象不再使用的时候调用,只执行一次

    void destroy()

4.2常用对象

  • HttpServletRequest:获取请求参数
  • HttpServletResponse:创建响应信息,将处理结果返回给客户端
  • HttpSession:会话管理

5.使用web.xml进行servlet映射

<!--配置字符编码-->
  <context-param>
  <param-name>charSetContent</param-name>
  <param-value>utf-8</param-value>
  </context-param>
  <servlet>
  <servlet-name>LoginServlet</servlet-name>
  <servlet-class>com.hz.servlet.LoginServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>LoginServlet</servlet-name>
  <url-pattern>/login</url-pattern>
  </servlet-mapping>
  <servlet>
  <servlet-name>ProviderServlet</servlet-name>
  <servlet-class>com.hz.servlet.ProviderServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>ProviderServlet</servlet-name>
  <url-pattern>/pro/list</url-pattern>
  </servlet-mapping>
String charSetContent;
/**
* 初始化方法
* @param config
* @throws ServletException
*/
public void init(ServletConfig config) throws ServletException {
charSetContent = config.getServletContext().getInitParameter("charSetContent");
System.out.println(charSetContent);
}

6.使用注解进行servlet的映射

@WebServlet("/login")