我需要定义许多servlet,但我不想在web.xml中编写所有配置。
我可以定义一些servlet配置文件,并将它们包含在web.xml中吗?或者有没有其他方法将web.xml拆分为多个文件?
答案 0 :(得分:5)
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模块的META-INF/web-fragment.xml
目录中的jar文件中包含WEB-INF/lib
文件和/或servlet注释。有关详细信息,请参阅Servlet 3.0 specification的第8.2节。
答案 1 :(得分:3)
Servlet 3.0规范允许通过Java注释声明servlet - 因此web.xml
文件中不需要任何条目。除此之外,我不知道任何“包含”功能。