【发布时间】:2012-01-12 21:44:12
【问题描述】:
我需要定义很多servlet,但我不想把配置全部写在web.xml中。
我可以定义一些 servlet 配置文件,并将它们包含在 web.xml 中吗?或者有没有其他方法可以将 web.xml 拆分为多个文件?
【问题讨论】:
我需要定义很多servlet,但我不想把配置全部写在web.xml中。
我可以定义一些 servlet 配置文件,并将它们包含在 web.xml 中吗?或者有没有其他方法可以将 web.xml 拆分为多个文件?
【问题讨论】:
Servlet 3.0 规范提供了一个新注解@WebServlet,可用于在代码中声明 servlet 而无需 web.xml。有关详细信息,请参阅Servlet 3.0 specification 的第 8.1.1 节并查看javadoc。
@WebServlet("/myServlet")
public class MyServlet extends HttpServlet {
//...
}
此外,Servlet 3.0 引入了 Web 片段的概念,它解决了您关于将 web.xml 拆分为多个文件的第二个问题。这些片段可以包含 Web 部署描述符的一部分(或全部),方法是在 Web 模块的 WEB-INF/lib 目录中的 jar 文件中包含 META-INF/web-fragment.xml 文件和/或 servlet 注释。有关详细信息,请参阅Servlet 3.0 specification 的第 8.2 节。
【讨论】:
Servlet 3.0 规范允许通过 Java 注释声明 servlet - 因此web.xml 文件中不需要任何条目。除此之外,我不知道有任何“包含”功能。
【讨论】: