天天看點

Spring中@Controller和@RestController的差別

@Controller和@RestController的共同之處:

都是用來擷取使用者發出的http請求

@Controller和@RestController的不同之處:

@Restcontroller是@Controller和@ResponseBody的結合體

1、如果隻使用@RestController,則該Controller中的方法無法直接通過return 字元串 傳回到指定頁面(例如 return success; 本應該傳回到success.jsp頁面,但隻是傳回顯示 success ),因為配置的視圖解析器InternalResourceViewResolver不起作用。是以這個時候需要用@Controller注解配合視圖解析器來完成跳轉。

2、如果要傳回JSON資料到頁面上,則需要使用@RestController注解