1、通過方法註解@ResponseBody
@ResponseBody
@RequestMapping(value = "/test", produces = "application/json;charset=UTF-8")
public Map<String, Object> test() {
Map<String, Object> map = new HashMap<String, Object>();
map.put("success", true);
map.put("data", "your data");
return map;
}
給RequestMapping方法加上@ResponseBody註解,直接return Map即可。
{"success":true,"data":"your data"}
需要添加jar
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.4.0</version>
</dependency>
2、通過類註解@RestController
@RequestMapping(value = "/test")
public Map<String, Object> test() {
Map<String, Object> map = new HashMap<String, Object>();
map.put("success", true);
map.put("data", "your data");
return map;
}
如果使用該註解,那麼該類所有方法返回都只能是String
@RestController註解,等於@Controller+@ResponseBody兩個註解的結合,返回json數據不需要在方法前面加@ResponseBody註解了,但使用@RestController這個註解,就不能返回jsp,html頁面,視圖解析器無法解析jsp,html頁面