有没有办法构建 Spring Web 调用,分别使用和生成 application / json 格式化的请求和响应?

也许这不是 Spring MVC ,我不确定。我正在寻找与 Jersey / JSON 类似的Spring库。最好的情况是,如果有一个注释,我可以添加到Controller类,将它们转换为 JSON 服务调用。

显示如何使用JSON构建 Spring Web Services 的教程非常棒。


编辑:我正在寻找基于注释的方法(类似于泽西岛)。

EDIT2:和Jersey一样,我正在寻找REST支持(POST,GET,DELETE,PUT)。

EDIT3:最好的情况是,这将是 pom.xml 条目以及有关使用spring-js和jackson Spring原生版本的一些信息。

有帮助吗?

解决方案

如果其他人员稍后到此处: http://blog.springsource.com/ 2010/01/25 / Ajax的简化式 - 弹簧 - 3-0 / 对我来说是最有用的链接。这最终使我理解了模型(经过不到一天的搜索)。

其他提示

你当然可以让控制器返回一个JSON输出的View。请查看 Spring-JSON项目

要使用JSON中的请求,我会假设您只是希望控制器将请求参数传递给可以解析数据的JSON库吗?

没有预先打包的方式来做你想要的事情,因为泽西通过 Jersey-Spring API因此没有理由重新发明轮子。

由于spring-mvc 3.0正式支持使用JSON进行Ajax远程处理,因此作为Spring MVC的一部分提供。这包括使用Spring MVC @Controller编程模型支持生成JSON响应和绑定JSON请求。

请参阅此处

从3.0版开始,此功能现在是Spring的一部分。您可以简单地使用@ResponseBody批注指定您希望将请求处理程序方法的返回值序列化为JSON并作为响应正文发送。请参阅 http://blog.springsource.com / 2010/01/25 / Ajax的简化式 - 弹簧 - 3-0 /

似乎 DWR 框架看起来非常接近您想要的得到。

您可以通过处理程序映射然后使用映射将返回的数据转换为JSON。处理程序配置可以在xml中完成(无需重新编译),这对应用程序的其余部分完全透明。

使用一些注释来注释控制器相当容易,然后连接BeanFactory引导过程以在一些处理程序映射过程中注册控制器。

我已经使用这种方法将结果从spring控制器转换为GWT RPC调用。

您还可以使用Spring AOP拦截控制器方法调用,并从/向JSON解包/包装请求。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top