【问题标题】:Spring MVC REST is not JAX-RS compliant. Does it matter? [closed]Spring MVC REST 不符合 JAX-RS。有关系吗? [关闭]
【发布时间】:2013-11-15 17:34:18
【问题描述】:

我在 Spring MVC REST 方面有很好的经验,并交付了几个可靠的项目。我的问题是关于 JAX-RS 合规性。这是否重要,因为 Spring 将继续存在,我不预见(也没有理由)必须在短期内从 Spring MVC REST 转移到 Jersy 或任何其他 JAX-RS impl。 有什么会迫使我考虑使用 JAX-RS 实现而不是 Spring MVC REST?

【问题讨论】:

  • REST就是REST,不管是用Spring MVC、Jersey还是其他web框架实现的。
  • @SotiriosDelimanolis 我明白这一点。我的问题是关于 JAX-RS 合规性的重要性(或微不足道)。如果我选择坚持使用 Spring MVC REST 有什么需要担心的。
  • @SotiriosDelimanolis - 选择哪个库真的很重要,当我们超出标准时,社区对其他库的支持,如 rest doc 库(swagger)和其他可能适用于标准的东西'不起作用,或者需要时间为每个平台提供一个特定的平台。所以你的努力可能会白费。因此,当您不了解全部意图及其影响时,请停止结束问题。
  • @SotiriosDelimanolis - 问题非常具体,即“Spring 不支持 JAX-RS 合规性”,是否与技术领域无关,因为我已经解释过它的支持/库?我重复一遍,如果意图没有被完全理解,那么结束这个问题是不好的。
  • 我已经投票决定重新提出这个问题,即使我怀疑这些人会理解它的重要性。

标签: java spring rest spring-mvc jax-rs


【解决方案1】:

恕我直言,如果您的 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 绑定。

【讨论】:

  • 我希望你不介意,但我正在添加我认为是你引用的伟大文章的关键线。
猜你喜欢
  • 2012-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-26
  • 1970-01-01
  • 2017-08-14
  • 2012-01-17
  • 2014-02-05
相关资源
最近更新 更多