Java REST / SOAP服务技术堆栈 - java

Improve this question

我正在寻找有关选择Java REST / SOAP Web服务实现的开源技术堆栈的建议。

我看过Tomcat和Jetty等,但是对于这个领域来说相对较新,我对于选择的数量之多和某些文档的缺乏感到不知所措。

这是针对PoC,因此易于配置和使用非常重要。如果将选定的技术推广到生产中,那么可扩展性显然将成为优先事项,但暂时不是(要显示项目的其他部分是主要目标)。

任何建议将不胜感激。

参考方案

这不是一个非常精确的问题。但是为了帮助您入门,我可以这样说:

  • tomcat和jetty都是Java Application Server。他们不提供对REST / SOAP技术的特定支持。它们只是Servlet容器。但是:您的Web服务将由一个或多个Servlet实现。因此,ServletContainer肯定会成为您堆栈的一部分。 (Tomcat被广泛使用)。
  • 一旦有了ServletContainer,就可以选择一些框架来帮助您。 Spring框架是一个轻量级的框架,可帮助您将所有内容整合在一起。配置所有组件等...它提供对REST / SOAP的内置支持,但也可以与功能更强大的Web服务专用框架集成。
  • 用于REST实现,我推荐Jersey(参考实现)。它可以很容易地与Spring集成。
  • SOAP的

  • :您可以查看apache CXF(它也提供对REST的支持)
  • 因此,您可以看一下:Tomcat + Spring + Jersey + CXF。我认为从Web服务开始是一个很好的开源堆栈。

    REST API版本控制 - java

    我目前在基于Java的Web应用程序上工作。最近,我们使用Spring创建了一些REST端点。这样做的原因是因为我们开发了一种混合移动应用程序,该应用程序通过这些端点与我们的主应用程序集成。问题是,今后我们还不确定如何处理更新。如果我们更新API,例如我们更改端点方法的方法签名,或者更改作为JSON返回的DTO上的属性,那么如果我们的移动用户运行的是过时版本…

    Java:正则表达式模式匹配器是否有大小限制? - java

    我的模式类似于OR:“word1 | word2 | word3”我大约有800个字。可能有问题吗? 参考方案 您仅受记忆和理智的限制。 :)

    Java:线程池如何将线程映射到可运行对象 - java

    试图绕过Java并发问题,并且很难理解线程池,线程以及它们正在执行的可运行“任务”之间的关系。如果我创建一个有10个线程的线程池,那么我是否必须将相同的任务传递给池中的每个线程,或者池化的线程实际上只是与任务无关的“工人无人机”可用于执行任何任务?无论哪种方式,Executor / ExecutorService如何将正确的任务分配给正确的线程? 参考方案 …

    JAVA:字节码和二进制有什么区别? - java

    java字节代码(已编译的语言,也称为目标代码)与机器代码(当前计算机的本机代码)之间有什么区别?我读过一些书,他们将字节码称为二进制指令,但我不知道为什么。 参考方案 字节码是独立于平台的,在Windows中运行的编译器编译的字节码仍将在linux / unix / mac中运行。机器代码是特定于平台的,如果在Windows x86中编译,则它将仅在Win…

    使用哪个Spring和Hibernate版本 - java

    Improve this question 我是Spring和Hibernate的新手。我必须开发一些REST API。因此,我需要帮助选择Spring和Hibernate的正确版本。一些初学者建议使用spring 3.0和Hibernat2 2.0。是正确的选择还是我必须使用spring 3.0和spring 3.0? 参考方案 一点都不。这两个版本已完全…