我在Spring MVC REST方面有很好的经验,并提供了几个可靠的项目。我的问题是关于JAX-RS合规性。这是否重要,因为Spring将继续存在,我无法预见(也没有理由)不得不在很短的时间内从Spring MVC REST转移到Jersy或任何其他JAX-RS。 有什么东西会迫使我考虑使用JAX-RS实现而不是Spring MVC REST?
答案 0 :(得分:26)
恕我直言,如果您的Web应用程序仅返回JSON / XML,则没有太大区别。但是,如果Web应用程序的某些端点需要返回HTML,则Spring MVC会更好。我认为是因为JAX-RS不提供任何MVC机制(AFAIK)。 Jersey(JAX-RS实现之一)提供Viewable / Template以支持MVC,但它是Jersey特有的功能,而不是JAX-RS规范的一部分。
第18章MVC模板
https://jersey.java.net/documentation/latest/mvc.html
此外,此博客可能会为您提供一些见解。
Jersey JAX-RS MVC杀死了Spring MVC明星
http://sleeplessinslc.blogspot.jp/2012/02/jersey-jax-rs-mvc-killed-spring-mvc.html
(但博客的结论与其标题不同。)
编辑 - 这是问题的答案:
如上面的第二个链接所示:
Jersey是一个JAX-RS实现,如果需要,可以将Jersey替换为RestEasy等其他提供商,而不需要太多努力。另一方面,Spring MVC具有REST Web服务支持,但同样不是JAX-RS实现,因此一个与Spring MVC相关联。