栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Spring中的@RequestBody和@ResponseBody批注

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring中的@RequestBody和@ResponseBody批注

在文档中有一个名为16.3.3.4的完整章节,其中将请求主体与@RequestBody批注进行映射。还有一个叫做16.3.3.5的映射,它使用@ResponseBody注释映射响应主体。我建议你查阅这些部分。也相关:@RequestBodyjavadocs,@ResponseBodyjavadocs

使用示例如下所示:

使用像JQuery这样的Javascript库,你可以像这样发布JSON对象:

{ "firstName" : "Elmer", "lastName" : "Fudd" }

你的控制器方法如下所示:

// controller@ResponseBody @RequestMapping("/description")public Description getDescription(@RequestBody UserStats stats){    return new Description(stats.getFirstName() + " " + stats.getLastname() + " hates wacky wabbits");}// domain / value objectspublic class UserStats{    private String firstName;    private String lastName;    // + getters, setters}public class Description{    private String description;    // + getters, setters, constructor}

现在,如果你在类路径中有Jackson(并进行了设置),Spring会将传入的JSON从帖子正文转换为UserStats对象(因为你添加了@RequestBody注释),并且会将返回的对象序列化为JSON(因为你添加了@ResponseBody注解)。因此,浏览器/客户端将看到以下JSON结果:

{ "description" : "Elmer Fudd hates wacky wabbits" }

有关完整的工作示例,请参见我的前一个答案:https : //stackoverflow.com/a/5908632/342852

注意:RequestBody / ResponseBody当然不限于JSON,两者都可以处理多种格式,包括纯文本和XML,但是JSON可能是最常用的格式。

更新资料
从Spring 4.x开始,通常不会

@ResponseBody
在方法级别使用,而是
@RestController
在类级别使用,具有相同的效果。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/398616.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号