我们是否需要用于REST服务的web.xml?

时间:2016-07-02 04:33:04

标签: spring rest spring-mvc

在使用Jersey框架编写REST服务时,我对web.xml的使用感到困惑。在我看来,如果我使用注释来定义路径,为什么我们需要web.xml?我刚刚在线使用参考文档开发了Spring Boot应用程序,他们甚至没有提到web.xml。那么,是不是说Spring删除了web.xml并用注释替换它?(例如@ Path,@ Get,@ Post)。 我在同一条线上的第二个问题是,如果我没有web.xml,那么将REST服务部署为jar是一个好习惯吗?

2 个答案:

答案 0 :(得分:3)

是否需要web.xml不依赖于Spring,而是依赖于您正在使用的Java EE Servlet规范的版本。

自Servlet v3.0起,不再需要web.xml,默认情况下Spring Boot与Servlet 3+兼容。

但是有一些技巧可以让它与Servlet 2.5一起运行。

答案 1 :(得分:2)

Spring Boot有助于简化工作流程。

使用Spring Boot,您可以创建一个jar,而不是war文件作为工件。

通常war文件会部署到你需要单独运行的webcontainer(如Tomcat)。

Spring Boot实际上将一个嵌入式Tomcat 放在你的jar中,以便运行它,这样你就不需要在别处启动你自己的Tomcat / web容器。

您运行Spring Boot Web服务,如:

java -jar my-spring-boot-application-1.0.0.jar

其中my-spring-boot-application-1.0.0.jar是你制作的jar的名字。