钢材做那个网站好,vi设计公司哪里,软件设计包括哪些内容,wordpress模板排行榜概要ResponseBody是 Spring MVC 中的一个重要注解#xff0c;用于指示方法的返回值应该直接作为 HTTP 响应体返回#xff0c;而不是解析为视图名称。基本功能ResponseBody主要用于将Java对象转换为HTTP响应体#xff08;通常是JSON或XML#xff09;绕过视图解析器直接返回数…概要ResponseBody是 Spring MVC 中的一个重要注解用于指示方法的返回值应该直接作为 HTTP 响应体返回而不是解析为视图名称。基本功能ResponseBody主要用于将Java对象转换为HTTP响应体通常是JSON或XML绕过视图解析器直接返回数据构建RESTful API使用方式方法级别
GetMapping(/user/{id})
ResponseBody
public User getUser(PathVariable Long id) {return userService.findById(id); // 直接返回User对象自动转换为JSON
}类级别结合Controller
Controller
ResponseBody
RequestMapping(/api/users)
public class UserApiController {// 所有方法都自动使用ResponseBody
}更简洁的RestControllerSpring4.0引入了RestController,它组合了Controller和ResponseBody
RestController // 等同于 Controller ResponseBody
RequestMapping(/api/users)
public class UserApiController {// 所有方法都自动使用ResponseBody
}工作原理当方法标注ResponseBody时Spring会使用HttpMessageConverter将返回值转换为指定格式默认情况下如果类路径有Jackson库会转换为JSON转换过程Java对象 → HttpMessageConverter → HTTP响应体(JSON/XML等)常见用途返回JSON数据
GetMapping(/orders)
ResponseBody
public ListOrder getOrders() {return orderService.findAll();
}返回简单字符串
GetMapping(/status)
ResponseBody
public String getStatus() {return OK;
}自定义相应内容类型
GetMapping(value /xml, produces MediaType.APPLICATION_XML_VALUE)
ResponseBody
public User getXmlUser() {return new User(John, Doe);
}相关注解注解说明RequestBody将HTTP请求体转换为Java对象RestController组合了Controller和ResponseBodyResponseStatus指定HTTP响应状态码