Servlet学习笔记

Servlet简介

Servlet是什么

Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。

Servlet架构
Servlet学习笔记_第1张图片
Paste_Image.png

Servlet生命周期

Servlet 生命周期可被定义为从创建直到毁灭的整个过程。以下是 Servlet 遵循的过程:
创建Servlet有两个时机:1)客户端第一次请求一个Servlet的时候 2)Web应用启动的时候立即创建,load-on-startup Servlet
Servlet 通过调用 init () 方法进行初始化。
Servlet 调用 service() 或者doGet和doPost方法来处理客户端的请求。
Servlet 通过调用 destroy() 方法终止(结束)。
最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。

Hello World

// 导入必需的 java 库import java.io.*;
import javax.servlet.*;import javax.servlet.http.*;
// 扩展 HttpServlet 类
public class HelloWorld extends HttpServlet { 
    private String message; public void init() throws ServletException {
    // 执行必需的初始化 
    message = "Hello World"; 
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
// 设置响应内容类型
 response.setContentType("text/html"); 
// 实际的逻辑是在这里 
 PrintWriter out = response.getWriter(); 
out.println("

" + message + "

"); } public void destroy() { // 什么也不做 } }

Servlet的配置

从Servlet3.0开始,配置Servlet有两种方式:

  • 在Servlet中使用@WebServlet注解进行配置
@WebServlet(name="firstServlet", urlPatterns={"/firstServlet"})
  • 在web.xml文件中进行配置

    name
    class


    name
    /

load-on-startup Servlet

有两种方式:
方式一:

@WebServlet(loadOnStartUp=1)

方式二:


    name
    class
    1

这个整数值越小,表面优先级越高。

访问Servlet的配置参数

同样有两种方式:
方式一:

@WebServlet(name="testServlet",urlPattern="/testServlet",initParams={@WebInitParam(name="a",value="b")})
public class TestServlet extends HttpServlet{
  public void service(HttpServletRequest request,HttpServletResponse, response) throws ServletException, java.io.IOException{
    ServletConfig config = getServletConfig();
    String a = config.getInitParameter("a");
  }
}

方式二:


    name
    class
    
        
        
    

你可能感兴趣的:(Servlet学习笔记)