> **阅读更多:** [Web 服务器如何工作?](//howtodoinjava.com/for-fun-only/a-birds-eye-view-on-how-web-servers-work/ "A birds-eye view on “how web servers work?”")
## 使用@WebServlet 注释开发 Servlet
## 使用`@WebServlet`注释开发 Servlet
如果您不太喜欢 xml 配置,而是特别喜欢注释,那么 Servlets API 也可以。 您可以使用[`@WebServlet`](https://docs.oracle.com/javaee/6/api/javax/servlet/annotation/WebServlet.html"WebServlet")注释,如下例所示,然后您无需在 web.xml 中进行任何输入。 **容器将自动将您的 servlet 注册到运行时,并像往常一样处理它**。
如果您不太喜欢 xml 配置,而是特别喜欢注释,那么 Servlets API 也可以。 您可以使用[`@WebServlet`](https://docs.oracle.com/javaee/6/api/javax/servlet/annotation/WebServlet.html"WebServlet")注释,如下例所示,然后您无需在`web.xml`中进行任何输入。 **容器将自动将您的 servlet 注册到运行时,并像往常一样处理它**。
```java
packagecom.howtodoinjava.servlets;
...
...
@@ -256,7 +255,7 @@ public class MyFirstServlet extends HttpServlet {
如果您不使用任何 IDE,那么您需要做一些额外的工作,例如从命令提示符下编译应用,使用 ANT 创建 WAR 文件等。但是我非常相信当今的每个人都使用一些 IDE 进行开发,因此我将 不要在本节中浪费更多时间。
![dynamic content in servlet](img/f1587c9576277355f3796da26d79564a.png)
...
...
@@ -331,7 +330,7 @@ public class CalendarServlet extends HttpServlet {
Servlet 使创建符合请求和响应生命周期的 Web 应用变得容易。 它们具有提供 HTTP 响应的能力,并且还可以在同一代码体内处理业务逻辑。 处理业务逻辑的能力使 servlet 比标准 HTML 代码强大得多。
在实际的应用中,HTML Web 表单包含发送到 Servlet 的参数。 然后,该 Servlet 以某种方式处理这些参数,并发布客户端可以看到的响应。 对于 HttpServlet 对象,客户端是 Web 浏览器,响应是 Web 页面。 <表单>动作属性指出应使用该属性来处理表单中包含的值。
在实际的应用中,HTML Web 表单包含发送到 Servlet 的参数。 然后,该 Servlet 以某种方式处理这些参数,并发布客户端可以看到的响应。 对于`HttpServlet`对象,客户端是 Web 浏览器,响应是 Web 页面。 `<form>`动作属性指出应使用该属性来处理表单中包含的值。
Since Servlet 3.0 API, the ability to mark a cookie as HTTP only has become available. This allows the cookie to be safeguarded against client-side scripting attacks, making the cookie more secure.