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同时配置时,标注无效。