Java Servlet 是运行在 Servlet 容器(如 Tomcat) 中的 Java 程序,用来处理 HTTP 请求并生成响应,是 Java Web 的基础技术。下面从整体流程、生命周期、核心机制三个层面说明它是如何工作的。
浏览器
↓ HTTP 请求
Web 服务器 (如 Nginx)
↓
Servlet 容器 (Tomcat)
↓
Servlet
↓
返回 HTML / JSON 等响应
Servlet 不直接和浏览器通信,而是:
http://localhost:8080/hello
Tomcat:
web.xml 或注解找到对应的 Servletservice()protected void doGet(HttpServletRequest req, HttpServletResponse resp)
Servlet 容器管理 Servlet 的生命周期:
init()public void init() { }
service()protected void service(HttpServletRequest req, HttpServletResponse resp)
doGetdoPostdestroy()public void destroy() { }
✅ Servlet 是线程不安全的(单例多线程)
request.getParameter("name");
request.getHeader("User-Agent");
response.getWriter().write("Hello");
response.setContentType("text/html");
@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
resp.setContentType("text/html");
resp.getWriter().write("Hello Servlet");
}
}
访问:
http://localhost:8080/hello
DispatcherServlet 本身就是一个 Servlet浏览器 → DispatcherServlet → Controller
Servlet 是运行在 Tomcat 中的 Java 类,由容器管理生命周期,用来接收 HTTP 请求并返回响应。
如果你愿意,我也可以:
你想深入哪一块?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。