1.@WebListener注解表示的就是我们之前的在xml中配置的<listener>
<listener-class>ListenerClass</listener-class>
</listener>下面我们只需要在我们写好的Listener类上面加上这个@WebListener注解就OK啦使用Listener的类必须使用下列的几个接口ServletContextListenerServletContextAttributeListenerServletRequestListenerServletRequestAttributeListenerHttpSessionListenerHttpSessionAttributeListener例子:package com.linuxidc.web.listener;import javax.servlet.annotation.WebListener;import javax.servlet.http.HttpSessionEvent;import javax.servlet.http.HttpSessionListener;@WebListenerpublic class MyHttpSessionListener implements HttpSessionListener{@Overridepublic void sessionCreated(HttpSessionEvent se) {System.out.println("创建session ");}@Overridepublic void sessionDestroyed(HttpSessionEvent se) {System.out.println("销毁session ");}}这样,在我们启动的时候 就会自动的帮助我们创建一个Listener了,这个注解有一个属性,是这个listener的描述信息2.@WebFilter 这个注解就是表示的拦截器 同样的也是直接注解在写好的Filter上面就ok了。package com.linuxidc.web.filter;import javax.servlet.*;import javax.servlet.annotation.WebFilter;import javax.servlet.annotation.WebInitParam;import javax.servlet.http.HttpServletRequest;import java.io.IOException;@WebFilter(filterName = "filter1", urlPatterns="/*",dispatcherTypes = {DispatcherType.REQUEST, DispatcherType.FORWARD},initParams={@WebInitParam(name="account",value="1234"),@WebInitParam(name="linuxidc",value="1234")})public class MyFilter implements Filter {@Overridepublic void init(final FilterConfig filterConfig) throws ServletException {String account = filterConfig.getInitParameter("account");String linuxidc = filterConfig.getInitParameter("linuxidc");System.out.println("account:"+account+" linuxidc:"+hotusm);}@Overridepublic void doFilter(final ServletRequest request, final ServletResponse response, final FilterChain chain) throws IOException, ServletException { chain.doFilter(request, response);}@Overridepublic void destroy() {}}注解的主要参数及其含义3.@WebServlet 这个注解表示的就是一般的Servletpackage com.linuxidc.web.servlet;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;import javax.servlet.http.HttpSession;import java.io.IOException;@WebServlet(name = "servlet1", urlPatterns = {"/url1", "/url2","url3/*"}, loadOnStartup = 1,initParams = {@WebInitParam(name = "name", value="linuxidc")})public class MyServlet extends HttpServlet {private String name;public MyServlet() {System.out.println("load on startup");}@Overridepublic void init() throws ServletException {super.init();name= this.getInitParameter("name");}@Overrideprotected void doGet(final HttpServletRequest req, final HttpServletResponse resp) throws ServletException, IOException {HttpSession session = req.getSession();System.out.println(session);System.out.println("name:"+name);}}注解主要参数参数和Filter差不多4.其中在上面的注解Filter和Servlet用到的@WebInitParam 注解 表示的就是参数啦 相当于<init-param>参数以及含义 5.@MultipartConfig 该注解主要是为了辅助 Servlet 3.0 中 HttpServletRequest 提供的对上传文件的支持。该注解标注在 Servlet 上面,以表示该 Servlet 希望处理的请求的 MIME 类型是 multipart/form-data。另外,它还提供了若干属性用于简化对上传文件的处理。具体如下:在Servlet Filter中使用Spring容器 http://www.linuxidc.com/Linux/2015-06/118881.htmJava Servlet关键点详解 http://www.linuxidc.com/Linux/2015-06/118468.htmTomcat手工搭建Jsp和Servlet程序 http://www.linuxidc.com/Linux/2014-07/104282.htmServlet 3.0的AsyncListener接口 http://www.linuxidc.com/Linux/2015-07/120496.htmServlet 3.1 规范(最终版)中文版+英文版PDF http://www.linuxidc.com/Linux/2016-05/131152.htmServlet生命周期实例代码 http://www.linuxidc.com/Linux/2015-12/126300.htm本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137476.htm