day01-2-@RequestMapping和Rest
全部标签 我有一个端点:/api/offers/search/findByType?type=X哪里X应该是Integer值(我的OfferType实例的序数值),而Spring考虑X一个String并将应用其StringToEnumConverterFactory与StringToEnum转换器。publicinterfaceOfferRepositoryextendsPagingAndSortingRepository{ListfindByType(@Param("type")OfferTypetype);}所以我写了一个自定义Converter它只是通过给定的序号获得一个实例:public
我想要一个图像,同时我点击一个API,比如localhost:8080:/getImage/app/path={imagePath}当我点击这个API时,它会返回一张图片。这可能吗?实际上,我已经试过了,但它给了我一个错误。这是我的代码,@GET@Path("/app")publicBufferedImagegetFullImage(@ContextUriInfoinfo)throwsMalformedURLException,IOException{StringobjectKey=info.getQueryParameters().getFirst("path");returnres
我正在研究Spring3,并且正在一个简单的Web应用程序中使用它。现在我正在使用注释实现一个SpringMVCController,我想知道:是否有使用@RequestMapping注释的最佳实践?我的意思是:我已经看到通常在这个注解中映射的URL在类中是硬编码的...有没有办法以“松耦合方式”传递URL(以获得更可重用的类)?我知道可以使用一些通配符,但我认为这不是解决方案...我错了吗?编辑:我添加一个例子来更好地解释我的疑问。假设我希望我的Controller由对/foo/bar/baz/mypage.htm的请求触发,在我的Controller中,处理程序方法将使用@Requ
我有一种情况需要以下RequestMapping:@RequestMapping(value={"/{section}"})...methodimplementationhere...@RequestMapping(value={"/support"})...methodimplementationhere...有明显的冲突。我希望Spring会自动解决这个问题,并将/support映射到第二个方法,将其他所有内容映射到第一个方法,但它将/support映射到第一个方法。我如何告诉Spring允许显式RequestMapping在同一位置用PathVariable覆盖RequestMa
所以我很好奇如何使用java8流API更有效地重写以下代码。publicstaticListgetResults(Stringorigin,Listdestinations){finalStringuri="https://api.searchflight.com/;Listresults=newLinkedList();for(Stringdestination:destinations){RestTemplaterestTemplate=newRestTemplate();Stringparams=getParams(origin,destination);FlightInfore
我需要限制调用者在REST响应中的属性。考虑JSON格式的响应。例如:对于给定的REST端点,默认响应如下{"id":"111""name":"John""age":"30"}对于“来电者1”,响应应该是这样的{"id":"111""name":"John""age":"null"}对于“来电者2”,响应应该是这样的{"id":"111""name":"null""age":"30"}在上述响应JSON中,“null”表示此类属性不会暴露给此类调用者。我正在寻找一种方法来控制调用者的REST响应。 最佳答案 服务器端的实现严重依赖底
我有一个巨大的JSON文件要作为测试目的的restapi调用的有效负载发布。我试过类似的东西:publicvoidRestTest()throwsException{Filefile=newFile("/Users/bmishra/Code_Center/stash/experiments/src/main/resources/Search.json");Stringcontent=null;given().body(file).with().contentType("application/json").then().expect().statusCode(200).body(equ
目前,当我(或者更重要的是,一个用户)在URL中输入我的一个剩余函数时,它可以工作,状态代码为200。但是,如果您输入错误或拼写错误,则会生成一个404页面,并在通过REST客户端查看时显示404状态代码。我不想在发送错误URL时收到404页面,而是想显示一个动态生成的JSON对象。如何修复该错误处理以执行我想要的操作,是否有一个地方可以定义在特定状态代码期间应该执行的操作? 最佳答案 我对PlayFramework不是很熟悉,但我很感兴趣。这discussionseemedatleastsimilartowhatyouwant:G
我有一个jersey服务和单元测试(使用jersey客户端),可以与3个FormDataParams一起工作:@Path("myService")@Consumes(MediaType.MULTIPART_FORM_DATA)@POST@Produces(MediaType.TEXT_PLAIN)publicResponsedoService(@FormDataParam("p1")Stringv1,@FormDataParam("p2")InputStreamv2,@FormDataParam("p3")InputStreamv3)throwsIOException{测试代码是这样的
阅读@RequestMapping文档:http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/web/bind/annotation/RequestMapping.html它的路径映射接受一个字符串数组参数。所以这可以使用java:@RequestMapping("MYVIEW")但在scala中我需要使用:@RequestMapping(Array("MYVIEW"))scala版本有意义,因为注释需要一个字符串数组。但是为什么上面在java中工作,它不应该给出编译时错误吗?下面的类“Arra