Servlet中,我們使用Response對象封裝請求響應,通常以HTML頁面的形式返回給客戶端。而在Spring MVC框架中,控制器(Controller)可以返回XML或JSON格式的數據,這使得Web服務變得更加簡單、靈活和高效。
在Spring MVC中,控制器方法需要使用@RestController注解來標識返回JSON數據。這個注解相當于@Controller和@ResponseBody的組合,它表示該類中的所有方法都會返回JSON格式的響應。
@RestController public class UserController { @GetMapping("/user/{id}") public User getUserById(@PathVariable Long id) { // 查詢用戶信息 User user = userService.getUserById(id); return user; } }
此處我們使用了@GetMapping注解來映射路徑,@PathVariable注解來獲取請求路徑中的參數。Controller方法返回的User對象將自動轉換成JSON格式并響應給客戶端。
除了@RestController注解外,我們還可以使用@ResponseBody注解來標識Controller方法返回JSON格式數據。
@Controller public class UserController { @RequestMapping(value = "/user/{id}", method = RequestMethod.GET) @ResponseBody public User getUserById(@PathVariable Long id) { // 查詢用戶信息 User user = userService.getUserById(id); return user; } }
在此處,@RequestMapping注解用于映射請求路徑和請求方法,@ResponseBody注解表示返回格式為JSON。這個方法與之前的例子實現相同。
總體來說,使用Controller返回JSON格式的數據非常方便和簡單,通過以上的例子可以看出,只需要使用@RestController或@ResponseBody來標識Controller方法,SpringMVC會自動將返回的對象轉換成JSON格式并響應給客戶端。同時,返回JSON格式的數據效率也比HTML頁面更高,對于需求前后端分離的項目,使用JSON格式是一種非常好的選擇。
上一篇clob存json
下一篇cookie是json