Servlet3.0新特性@WebServlet

1.

web.xml配置如下:

<servlet>
        <servlet-name>ServletTest</servlet-name>
	<servlet-class>servlet.ServletTest</servlet-class>
</servlet>
<servlet-mapping>
	<servlet-name>ServletTest</servlet-name>
	<url-pattern>/servlet/myTest</url-pattern>
</servlet-mapping>

通过标注可以同样实现,如下:

@WebServlet(name="ServletTest",urlPatterns={"/myTest"})

由于是在对应的类中配置的信息,因而则可以不用在标注中配置class了。

2.

另一个问题,在web.xml中一个servlet可以配置多个servlet-mapping,只要在其中指定相同的servlet-name即可。而在标注中使用value只能指定一个。其实,标注也可以指定多个的,但不再用value,而是用urlPatterns数组。如下配置

@WebServlet(name="HelloWorld",urlPatterns={"/HelloWroldServlet","/HelloWorld"})。如此,通过

http://localhost:8080/servlet/HelloWroldServlet

http://localhost:8080/servlet/HelloWorld

两个都可以进入同一个servlet。

当标注与web.xml同时配置时,标注无效。





你可能感兴趣的:(Servlet3.0新特性@WebServlet)