Servlet 是一个在 Web 服务器上的 JVM 内运行的 java 程序。它用于开发动态 Web 应用。
在我们继续之前,让我们了解什么是**动态 Web 应用?** Web 应用可以被描述为网页集合(例如网站),当我们称之为动态时,它只是意味着所有用户的网页都不相同,网页将在服务器端生成根据客户端(用户的浏览器)的请求。
静态和动态网页之间的主要**区别在于,名称建议的静态页面对于所有用户保持相同,但是动态网页基于来自客户端(用户的浏览器)的请求而改变。例如,考虑一个 Web 应用,它向您显示两个输入字段&添加按钮,当您输入两个数字并单击添加时,它会显示另一个网页,其中包含两个数字的结果,此 Web 应用本质上是动态的,作为第二个网页,显示结果更改基于用户输入,对所有用户都不是静态的。**
静态和动态网页之间的主要区别在于,名称建议的静态页面对于所有用户保持相同,但是动态网页基于来自客户端(用户的浏览器)的请求而改变。例如,考虑一个 Web 应用,它向您显示两个输入字段和添加按钮,当您输入两个数字并单击添加时,它会显示另一个网页,其中包含两个数字的结果,此 Web 应用本质上是动态的,作为第二个网页,显示结果更改基于用户输入,对所有用户都不是静态的。
1.[javax.servlet 官方 Servlet API 文档](https://docs.oracle.com/cd/E17802_01/products/products/servlet/2.5/docs/servlet-2_5-mr2/javax/servlet/package-summary.html)
2.[java.servlet.http API 文档](https://docs.oracle.com/cd/E17802_01/products/products/servlet/2.5/docs/servlet-2_5-mr2/javax/servlet/http/package-tree.html)
\ No newline at end of file
#### `javax.servlet`包中的接口
*`Servlet`
*`ServletRequest`
*`ServletResponse`
*`ServletConfig`
*`ServletContext`
*`SingleThreadModel`
*`RequestDispatcher`
*`ServletRequestListener`
*`ServletRequestAttributeListener`
*`ServletContextListener`
*`ServletContextAttributeListener`
*`Filter`
*`FilterConfig`
*`FilterChain`
#### `javax.servlet`包中的类
*`GenericServlet`
*`ServletInputStream`
*`ServletOutputStream`
*`ServletException`
*`ServletRequestWrapper`
*`ServletRequestEvent`
*`ServletResponseWrapper`
*`ServletContextEvent`
*`ServletRequestAttributeEvent`
*`ServletContextAttributeEvent`
*`UnavailableException`
#### `javax.servlet.http`包中的接口
*`HttpSession`
*`HttpServletRequest`
*`HttpServletResponse`
*`HttpSessionAttributeListener`
*`HttpSessionListener`
*`HttpSessionBindingListener`
*`HttpSessionActivationListener`
*`HttpSessionContext`
#### `javax.servlet.http`包中的类
*`HttpServlet`
*`Cookie`
*`HttpSessionEvent`
*`HttpSessionBindingEvent`
*`HttpServletRequestWrapper`
*`HttpServletResponseWrapper`
*`HttpUtils`
**参考:**
1.[官方 Servlet API 文档:`javax.servlet`](https://docs.oracle.com/cd/E17802_01/products/products/servlet/2.5/docs/servlet-2_5-mr2/javax/servlet/package-summary.html)
4.**protected void doPost(HttpServletRequest req,HttpServletResponse resp)**:servlet 服务方法调用此方法来处理来自客户端的 POST 请求。 HTTP POST 方法允许客户端一次性向 Web 服务器发送无限长度的数据,并且在向服务器发布信息时非常有用。与 doGet 不同,我们从服务器获取信息时,在从客户端向服务器传输信息时使用此方法。