一,简介
Servlet(Server Applet)是Java Servlet 的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容。
二,HelloWorld
编写一个 Servlet 来处理客户端请求,分为一下几个步骤:
1,新建一个类实现 Servlet 接口,并实现所有方法
import javax.servlet.*;
import java.io.IOException;
public class HelloServlet implements Servlet {
@Override
public void init(ServletConfig servletConfig) throws ServletException {
System.out.println("init: completed");
}
@Override
public ServletConfig getServletConfig() {
return null;
}
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("service: Hello World!");
}
@Override
public String getServletInfo() {
return null;
}
@Override
public void destroy() {
System.out.println("destroy: ...ing!");
}
}
2,在 web.xml 中配置 Servlet 以及 Servlet 和 URL 的关系映射
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<!-- 配置 Servlet -->
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<!-- 配置 Servlet 和客服端请求的对应关系,即配置哪些请求由这个 Servlet 进行处理-->
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
</web-app>
3,部署运行,访问指定链接:http://localhost:8080/ServletHelloWorld/HelloServlet
说明:运行环境(IntelliJ IDEA + Tomcat7 + Java8 + Windows10),这里就不再介绍如何搭建运行环境以及如何去创建一个Web项目了
三,生命周期
Servlet 生命周期可被定义为从创建直到毁灭的整个过程。以下是 Servlet 遵循的过程:
- Servlet 通过调用 init () 方法进行初始化。该方法只在创建 Servlet 实例时调用,且只执行一次。默认情况下,在用户第一次请求时会创建实例,即在后续每次用户请求时不再调用。
- Servlet 调用 service() 方法来处理客户端的请求。每次用户请求时,都会调用此方法。
- Servlet 通过调用 destroy() 方法终止(结束)。在 Servlet 生命周期结束时被调用,只会被调用一次。通常,您可以在这里做一些资源回收的操作。