作用:用于将一个类声明为 Servlet
描述:该注解将会在部署时被容器处理,容器将根据具体的属性配置将相应的类部署为 Servlet。
属性详解:该注解具有下表给出的一些常用属性(以下所有属性均为可选属性,但是 vlaue 或者 urlPatterns 通常是必需的,且二者不能共存,如果同时指定,通常是忽略 value 的取值)
属性名 | 类型 | 属性描述 |
name | String | 指定servlet的name属性,等价于<Servlet-name>.如果没有显示指定,则该servlet的取值即为类的全限定名. |
value | String[] | 等价于urlPatterns,二者不能共存. |
urlPatterns | String[] | 指定一组servlet的url的匹配模式,等价于<url-pattern>标签. |
loadOnStartup | int | 指定servlet的加载顺序,等价于<load-on-startup>标签. |
initParams | WebInitParam[] | 指定一组初始化参数,等价于<init-param>标签. |
asyncSupported | boolean | 申明servlet是否支持异步操作模式,等价于<async-supported>标签. |
displayName | String | servlet的显示名,等价于<display-name>标签. |
description | String | servlet的描述信息,等价于<description>标签. |
package com.item.filter;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;
//注解配置
@WebServlet(
displayName = "UserServlet" , //描述
name = "UserServlet", //servlet名称
urlPatterns = { "/user" }, //url
loadOnStartup = 1, //启动项
initParams = { @WebInitParam(name = "username", value = "张三") }
)//初始化参数
public class UserServlet extends HttpServlet {
private String username;
@Override
public void init(ServletConfig config) throws ServletException {
//获取初始化信息:张三
username = config.getInitParameter("username");
}
@Override protected
void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//主要内容操作
}
}