当我创建一个webapi时,我必须在web.xml中声明相关的class/url
<servlet-mapping>
<servlet-name>myServlet</servlet-name>
<url-pattern>/myServlet.htm</url-pattern>
<!-- WebApi -->
<url-pattern>/Timbrature2/*</url-pattern>
<url-pattern>/Timbrature2.json/*</url-pattern>
<url-pattern>/Timbrature2.xml/*</url-pattern>
<url-pattern>/Timbrature/*</url-pattern>
<url-pattern>/Timbrature.json/*</url-pattern>
<url-pattern>/Timbrature.xml/*</url-pattern>
<url-pattern>/TimbratureMobile/*</url-pattern>
<url-pattern>/TimbratureMobile.json/*</url-pattern>
<url-pattern>/TimbratureMobile.xml/*</url-pattern>
<url-pattern>/$metadata</url-pattern>
</servlet-mapping>
但是如果我的webapp从jars动态代码加载,我可以添加一个“新”类来用作REST端点吗?
阅读Apache文档,尝试各种配置,但一无所获
1条答案
按热度按时间8tntrjer1#
如果希望一个servlet处理所有事情,可以将其注册到广泛的URL模式,如
值得一阅读的是Servlet Specification,特别是12.2节(在4.0版本的规范中),其中涵盖了“Map规范”。
另一种选择是在代码中使用
@WebServlet
注解(在上面的文档的8.1.1节中介绍)来从代码中建立Map。我更喜欢web.xml
中的声明式Map,因为所有Map都位于同一位置,而不是分散在任意的源文件中,这些源文件的源代码可能并不总是可用的。