[url]http://my.oschina.net/u/2416019/blog/633804[/url]
使用@WebServlet就不需要web.xml配置了。当标注与web.xml同时配置时,标注无效。 使用配置描述符(命名:web.xml)的好处是:如果需要修改配置值,如:Servlet路径,就不需要重新编译Servlet类。
1.
web.xml配置如下:
通过标注可以同样实现,如下:
由于是在对应的类中配置的信息,因而则可以不用在标注中配置class了。
2.
另一个问题,在web.xml中一个servlet可以配置多个servlet-mapping,只要在其中指定相同的servlet-name即可。而在标注中使用value只能指定一个。其实,标注也可以指定多个的,但不再用value,而是用urlPatterns数组。如下配置
[url]http://localhost:8080/servlet/HelloWroldServlet[/url]
[url]http://localhost:8080/servlet/HelloWorld[/url]
两个都可以进入同一个servlet。
当标注与web.xml同时配置时,标注无效。
使用@WebServlet就不需要web.xml配置了。当标注与web.xml同时配置时,标注无效。 使用配置描述符(命名:web.xml)的好处是:如果需要修改配置值,如:Servlet路径,就不需要重新编译Servlet类。
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"})
。如此,通过
[url]http://localhost:8080/servlet/HelloWroldServlet[/url]
[url]http://localhost:8080/servlet/HelloWorld[/url]
两个都可以进入同一个servlet。
当标注与web.xml同时配置时,标注无效。