一、Servlet是什么?
Servlet是java提供的一门动态web资源开发技术。是一个java规范,其实就是一个接口,将来我们需要定义Servlet类实现Servlet接口,并由web服务器运行Servlet。
二、快速入门
1.Servlet依赖坐标
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope> <!--依赖范围-->
</dependency>
</dependencies>
2.实现Servlet接口
import javax.servlet.*;
import javax.servlet.annotation.WebServlet;
import java.io.IOException;
@WebServlet("/demo1")//访问路径
public class ServletDemo1 implements Servlet {//定义一个Servlet接口
@Override
public void init(ServletConfig servletConfig) throws ServletException {
}
@Override
public ServletConfig getServletConfig() {
return null;
}
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("Servlet你是爹!");
}
@Override
public String getServletInfo() {
return null;
}
@Override
public void destroy() {
}
}``
3.设置·Servlet访问路径
4.访问
Tomcat运行生成访问路径,打开浏览器访问,访问一次,控制台输出一次
http://localhost:8080/Tomcat-project/demo1
三、Servlet
1.执行流程
浏览器请求(http://localhost:8080)Tomcat web服务器,服务器创建执行web项目 ,调用Servlet对象里的servlet()方法,然后响应回浏览器
2.生命周期
对象生命周期是指对象从创建到销毁的过程
3.方法介绍
1.初始化方法,在Servlet被创建时执行,只执行一次
void init(ServletConfig config)
2.提供服务方法,每次Servlet被访问,都会调用该方法
void serivce(ServletRequest req,ServletResponse res)
3.销毁方法,当Servlet被销毁时,调用该方法。在内存释放或服务器关闭时销毁Servlet
void destroy()
4.获取ServletConfig对象
ServletConfig getServletConfig()
5.获取Servlet信息
String getServletInfo()
4.HttpServlet
1.使用步骤
继承HttpServlet
重写doGet和doPost
2.HttpServlet
获取请求方式,并根据不同的请求方式,调用不同的doXxx方法。
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
//根据请求方法的不同进行处理
HttpServletRequest res = (HttpServletRequest) servletRequest;
//获取请求方法
String s = res.getMethod();
//判断请求方式
if ("GET".equals(s)){
doGET(servletRequest,servletResponse);
}else if("POST".equals(s)){
doPOST(servletRequest,servletResponse);
}
}
protected void doPOST(ServletRequest servletRequest, ServletResponse servletResponse) {
System.out.println("post.......");
}
protected void doGET(ServletRequest servletRequest, ServletResponse servletResponse) {
System.out.println("get.......");
}