REST API for Java?

我正在准备一个基于控制台的应用程序,应用程序的结果是一个RDF / XML文件,其中包含我在LinkedIn上所有连接的数据。 现在问题是我的整个应用程序都是基于控制台的,我需要有一个REST API,以便与我的应用程序合并。

我不知道REST API以及如何将它与JAVA一起使用,但可以轻松浏览文档并理解它。 我的应用程序使用LinkedIn的REST API。

那么请您为一些优秀的Java API提供建议吗?

JAX-RS是RESTful Web服务的标准Java API。 Jersey是这方面的参考实现,它具有服务器端和客户端API(因此,将代码中的方法公开为RESTful Web服务的方法,以及与其他地方运行的RESTful Web服务进行通信的方式)。

还有其他JAX-RS实现,例如Apache CXF和JBoss RESTEasy 。

快速代码示例:

1)在你的pom中添加javax.ws.rs依赖项(如果使用Maven)或下载它。

 javax.ws.rs jsr311-api 1.1.1  

2)创建一个空类来定义服务的路径; 例如,在application/service/rest听证会

 import javax.ws.rs.ApplicationPath; import javax.ws.rs.core.Application; @ApplicationPath("/service/rest") public class WebConfig extends Application { } 

3)创建api的控制器。 例如,如果我们需要这些调用: application/service/rest/resource/{id}一个简单的代码将是:

 import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.Response; import javax.ws.rs.core.Response.Status; @Path("resource/{id}") public class ApiController { /** * Call: /service/rest/resource/23 * @return HTTP Response */ @GET public Response getResource(@PathParam("id") String anId) { Resource myResource = whatever.get(anId); return Response.status(Status.OK).entity(myResource).build(); } 

4)如果我们想要指定JSON响应,请确保您拥有资源的getter并输入:

 @GET @Produces("application/json") public Response getResource(@PathParam("id") String anId) { // the same } 

如果您正在考虑在云中托管Java代码,Raimme Platform为您提供了一个仅使用一个注释公开REST API端点的好机会。

假设您有一个名为my.app.Customer的数据库对象/表,并且您希望创建一个端点以返回与特定名称匹配的所有客户。 在Raimme中,您将实现如下:

 @Rest(url = "customers/find") public List find(@Param("keyword") String keyword) { return { select id, name, company.name from my.app.Customer where name ilike '%#keyword%' }; } 

您可以在此处找到更多信息: http : //raimme.com/devcenter?itemsId = 1cg000000000g