【2023.11.28】关于Servlet路径的学习
创建Servlet
这是Tomcat配置的初始路径,在web项目内,该路径代表了webapp下index.html所在的页面。
@WebServlet(name = "login", value = "/login",loadOnStartup = 1)
public class LoginServlet extends HttpServlet {
使用注解的方式为Servlet添加路径,此时http://localhost:8080/exp3_war_exploded/login就是该Servlet的路径。
在web项目中,我们并没有书写Main函数。实际上是Tomcat在使用Servlet。
Servlet生命周期:
- 首先执行构造方法完成 Servlet 初始化
- Servlet 初始化后调用 init () 方法。
- Servlet 调用 service() 方法来处理客户端的请求。
- Servlet 销毁前调用 destroy() 方法。
- 最后,Servlet 是由 JVM 的垃圾回收器进行垃圾回收的。
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
在service()方法中存在servletRequest, ServletResponse两个参数。前者携带了用户在浏览器发起的HTTP请求,被Tomcat包装;后者就是我们需要返回给浏览器的HTTP响应。
HttpServlet
该实现类针对客户端发起的不同类型HTTP请求,提供了不同的处理方法。(doPost,doGet,doOptions等...)
@WebServlet注解
使用通配符,可以让任意子路径都能访问到该Servlet。
@WebServlet(name = "login", value = "/login/*",loadOnStartup = 1)
public class LoginServlet extends HttpServlet {