草庐IT

rest-assured-jsonpath

全部标签

java - 接受并返回对象的 REST 服务。客户端怎么写?

我已经声明了两个REST网络服务。一个只返回一个对象。其他接受一个对象并返回另一个对象。使用POJOOrder.java。@XmlRootElementpublicclassOrder{privateStringid;privateStringdescription;publicOrder(){}@XmlElementpublicStringgetId(){returnid;}@XmlElementpublicStringgetDescription(){returndescription;}//Othersettersandmethods}网络服务定义为@Path("/orders"

java - MVC 或 Rest 或两者

我正在设计一个基于Web的用户界面的服务器端,这将是JavaScript密集型的。我最初想使用MVC解决方案,但现在我想使用基于REST的解决方案,例如Jersey或ReSTLets。这通常是一种或另一种类型的决定,还是它们可以是组合解决方案?谢谢,迈克 最佳答案 MVC是关于应用内部如何工作的。REST是关于您的应用如何与其他应用“对话”的。你可以组合它们。许多现代框架实际上都是基于MVC的,这使得实现RESTWeb服务变得容易:RubyonRails、带有SpringMVC的JavaSpringFramework、Django、

java - Rest 服务中的 Spring Boot 自定义异常

我在基于SpringBoot的Rest服务中定义了一个全局异常处理:@ControllerAdvicepublicclassGlobalExceptionController{privatefinalLoggerLOG=LoggerFactory.getLogger(getClass());@ResponseStatus(value=HttpStatus.INTERNAL_SERVER_ERROR,reason="Internalapplicationerror")@ExceptionHandler({ServiceException.class})@ResponseBodypubli

java - java restful服务中如何消费json参数

我如何在我的web服务中使用json参数,我可以使用@PathParam获取参数但是要获取json数据作为参数却不知道该怎么做。@GET@Path("/GetHrMsg/json_data")@Consumes({MediaType.APPLICATION_JSON})@Produces(MediaType.APPLICATION_JSON)publicStringgethrmessage(@PathParam("emp_id")Stringempid){用什么代替@PathParam以及以后如何解析它。 最佳答案 我假设您正在谈论

java - 用于 Java 的 REST API?

我正在准备一个基于控制台的应用程序,该应用程序的结果是一个RDF/XML文件,其中包含我来自LinkedIn的所有连接数据。现在的问题是我的整个应用程序都是基于控制台的,我需要一个RESTAPI以便与我的应用程序合并。我不知道RESTAPI以及如何将它与JAVA一起使用,但可以轻松阅读文档并理解它。我的应用程序使用LinkedIn的RESTAPI。那么您能推荐一些适用于Java的优秀RESTAPI吗? 最佳答案 JAX-RS是用于RESTfulWeb服务的标准JavaAPI。Jersey是此的引用实现,它具有服务器端和客户端API(

java - 当您可以实现 Web 服务 (SOA/REST) 时,用 RMI 实现 EJB 仍然有用吗?

这听起来可能类似于this,但事实并非如此。我对EJB和RMI比较了解,而且我在SOA下使用Web服务也有一段时间了。我想知道为什么使用EJB在RMI下公开远程接口(interface)而不是发布Web服务(SOA/REST,但主要是SOA)是有用的。我不是在问哪个更好,我只是想知道一个很好的理由,说明为什么我更愿意通过Web服务实现具有远程接口(interface)的EJB。我浏览了很多网页,但似乎都过时了。到目前为止,我所知道的是,在与Java遗留系统集成时,EJB公开远程接口(interface)仅比WS更好。如果我想管理事务,我可以使用本地接口(interface)实现EJB。

java - 运行时的部分 JSON 序列化(用于 RESTful 查询)

我正在尝试在Tomcat(目前使用Jackson)中将Java对象转换为JSON。基于RESTful请求中的字段,我只想序列化那些字段。我想支持对字段的任何子集的请求,因此我想在运行时(动态地)执行此操作。例如,假设我想支持User对象的部分序列化:classUser{privatefinalStringid;privatefinalStringfirstName;privatefinalStringlastName;publicUser(Stringid,StringfirstName,StringlastName){this.id=id;this.firstName=firstNa

java - REST with JAX-RS - 处理长时间运行的操作

我有一个使用JAX-RS实现的REST服务。有些操作需要很长时间才能完成,可能需要15-30分钟。对于这些情况,我倾向于分派(dispatch)一个后台线程来处理长时间运行的操作,然后立即响应HTTP状态202ACCEPTED。响应将包含一个带有url的位置header,客户端可以使用该url来轮询进度。此方法需要创建线程来处理长时间运行的操作,以便可以立即返回202ACCEPTED。我还知道,在JavaEE容器中创建自己的线程通常是不好的做法!我的问题如下:人们是否同意这是一种正确的方法?假设它是正确的,人们能否推荐一个“良好实践”解决方案,使我能够在后台调度长时间运行的操作并立即返

java - 如何在 REST 中处理异步操作

我需要了解在REST中处理异步操作的方法有哪些,它们的优缺点是什么。我发现的一些方法:基于资源:操作的状态被建模为状态。用户进行异步REST调用(PUT、POST等)得到Accepted或In-Progress响应(202)。此外,通过GET重复轮询状态URI,以检查操作执行的状态/进度/消息。问题:这个资源应该在服务器上活跃多久?如果客户端在操作完成之间以较大的间隔进行轮询,我们如何返回状态?似乎坚持执行状态会起作用。但是坚持多久,什么时候归档/删除,是这种标准做法吗?基于回调:异步请求需要有回调URI。请求被异步处理,完成后调用带有操作状态/结果的回调URI。问题:这看起来更优雅并

java - 缓冲 REST 响应的方法

有一个REST端点,它为我的应用程序提供大量(数十GB)数据block。应用程序按照自己的节奏处理数据,随着传入数据量的增长,我开始遇到REST端点超时。意思是,处理速度低于网络直通输出。不幸的是,没有办法足够提高处理速度,因为没有“足够”——传入的数据量可能会无限增长。我正在考虑一种在处理之前在本地存储传入数据的方法,以便在发生超时之前释放REST端点连接。到目前为止,我的想法是将传入数据下载到临时文件并使用OutputStream/InputStream同时读取(处理)所述文件。使用文件进行缓冲。这带来了它自己的问题:如果处理速度变得比下载速度更快怎么办一段时间后我得到了EOF?文