基于Java/Spring的WebService的替代方案

7
我正在寻找替代方案,让我的团队能够创建简单的REST服务,并以JSON格式响应多个客户端。目前这些服务是在Spring MVC和Hibernate上开发的。连接和使用遗留数据库(SQLServer、DB2和MySQL - 取决于项目)是强制性的。现在我正在寻找轻量级方法来进行服务开发。不要误解:Spring做得很好,但遗憾的是我们团队中并非每个人都熟悉Spring甚至Hibernate。此外,在大多数情况下,甚至不需要完整的Spring堆栈。摆脱JVM也会有所帮助。
我考虑过像脚本一样的解决方案。也许是PHP?是否有类似ORM的东西可以在遗留数据库系统上工作?Ruby on Rails也是如此。
也许还有我没有听说过或了解到的东西。我很想听听您对其他技术的看法或经验。
问候

没有任何 PHP 框架能够满足我的需求吗? - onigunn
3个回答

2

JAX-RS 是 JVM 上进行 rest 的一种非常好的轻量级方式。有插件可以将 JAXB 注释的对象转换为 JSON,或者你可以通过多种方式自己完成。

EclipseLink 是 JPA 规范的一个很好的实现,通过注释它是把对象映射到数据库中的一种相当简单的方式。JAX-RS 默认与之配合工作,例如可以使用 JPA 查找对象,然后用 JAXB 进行注释并直接从 web 服务方法返回(如果需要 XML),它会正常工作。此外,Jersey(JAX-RS 的参考实现)还有一个插件,可以通过这种方式将东西序列化为 JSON。

JAX-RS、JPA 和 JAXB 是三个非常好的 API,虽然不能做到全能,但它们轻巧且能够帮助您轻松完成真正的工作。


+1 - EclipseLink还提供了一个JAXB规范的实现,称为MOXy。这是一个使用EclipseLink作为JPA和JAXB提供程序创建Bill所描述的RESTful服务类型的示例链接:http://blog.bdoughan.com/2010/08/creating-restful-web-service-part-15.html - bdoughan
我一定会仔细研究这个。看起来是一个干净的方法,没有真正大的堆栈支持它。 - onigunn

1

不确定您是否愿意朝这个方向发展,但我最近在ASP.NET MVC 3中编写了一个Web服务。您可以直接将传递的JSON绑定到对象模型,而无需编写任何额外的代码。您还可以配置URL以匹配REST标准。如果您正在使用类似SQL Server的东西,这种方法可能会非常简单。


谢谢你的回答,Mike。但是我认为ASP.NET框架并不比我们迄今为止的Java解决方案更轻量级。 - onigunn

0
我建议使用Rails或Sinatra(你可以在Java上使用JRuby运行它们)。两者都可以利用ActiveRecord和其他Ruby ORM和DB连接库;你应该能够轻松地让这些库与你的遗留数据库进行通信。

你能提供一个Marnen的例子吗?比如博客文章或者类似的东西? - onigunn
你具体想要一个什么样的示例? - Marnen Laibow-Koser

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接