@webServlet注解的使用(适合初次接触的朋友)
@webServlet注解的使用(适合初次接触的朋友)Servlet 3.0Servlet3.0提供了注解(annotation),我们可以不用再web.xml里面配置servlet,只需要加上@WebServlet注解就可以修改该servlet的属性了。web.xml可以配置的servlet属性,在@WebServlet中都可以配置。使用导包:<dependency><gro
@webServlet注解的使用(适合初次接触的朋友)
Servlet 3.0
Servlet3.0提供了注解(annotation),我们可以不用再web.xml里面配置servlet,只需要加上@WebServlet注解就可以修改该servlet的属性了。web.xml可以配置的servlet属性,在@WebServlet中都可以配置。
使用
导包:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
注意看仔细这两个是不一样的,下面一个包应该都知道,
我这里只是拿出来说一下这两个包不一样。要使用时必须的导入上面那个包。
一. 用法(非常简单):
只需要在原来的Servlet类上面加上 @WebServlet("/login.do")
不理解?没事我们来对比一下就会更清楚了。
没用注解时:
web.xml :
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.jiang.servlet.user.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login.do</url-pattern>
</servlet-mapping>
servlet类:
用了@WebServlet注解后:
只需要在原来的Servlet类上面加上@WebServlet("/login.do"),如图:
意思就是说你使用这个这个注解后就可以不用在写再去web.xml中部署了servlet了,使用这个注解就相当于替换了它。
二. 配置
web.xml可以配置的servlet属性,在@WebServlet中都可以配置。(我这里就不具体说了)
@WebServlet属性列表:
三. 注意事项(一定要注意啊!)
初次使用@WebServlet注解时注意一些坑,
1. 使用这个注解时web.xml文件的设置
说一说web.xml中metadata-complete属性吧:
无论是Servlet,还是Filter,Listener等,在自定义Filter时,要想使它起作用,那么必须要对它进行配置,一般都有两种配置的方式,一种是基于配置式的,另一种则是基于注解式的。
metadata-complete="false" //false是指使用注解式
metadata-complete="true" //true是指使用配置式
2. 使用了注解式就不要使用配置式了。就是不要同时配置该Servlet的web.xml的servlet配置又在类上添加注解
3. @WebServlet("/login.do")这个括号里面不要忘了打 /
这几个注意事项都是初次使用的朋友可能会遇到的错误的原因。
四.@WebFilter过滤器
可能使用会想不用配置式了,过滤器怎么办?
使用@WebFilter注解,用法跟@WebServlet用法类似。
@WebFilter 用于将一个类声明为过滤器,该注解将会在部署时被容器处理,容器将根据具体的属性配置将相应的类部署为过滤器。
@WebFilter常用属性:
更多推荐
所有评论(0)