日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

@Controller和@RestController的区别

發布時間:2024/4/17 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 @Controller和@RestController的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

為什么80%的碼農都做不了架構師?>>> ??

?

?

?

?

?

?

官方文檔:
@RestController is a stereotype annotation that combines @ResponseBody and @Controller.
意思是:
@RestController注解相當于@ResponseBody + @Controller合在一起的作用。
?

1)如果只是使用@RestController注解Controller,則Controller中的方法無法返回jsp頁面,配置的視圖解析器InternalResourceViewResolver不起作用,返回的內容就是Return 里的內容。

例如:本來應該到success.jsp頁面的,則其顯示success.

2)如果需要返回到指定頁面,則需要用 @Controller配合視圖解析器InternalResourceViewResolver才行。
3)如果需要返回JSON,XML或自定義mediaType內容到頁面,則需要在對應的方法上加上@ResponseBody注解。

總結:@RestController

整個類所有方法不再返回視圖頁面,全部返回方法中定義的返回內容,比如json:

例如:

package com.kbs.platform.controller;import java.util.HashMap; import java.util.Map;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController;@RequestMapping("/json") @RestController public class JsonController {@RequestMapping("/map")public Map<String, String> getmap(){Map<String, String> map=new HashMap<>();map.put("a", "b");map.put("c", "d");map.put("d", "小家心");return map;}@RequestMapping("/body")public Map<String, String> getmap2(){Map<String, String> map=new HashMap<>();map.put("a", "b");map.put("c", "d");map.put("d", "小家心");return map;}} //實例二 @ResponseBody + @Controller //這個類的方法既可以返回視圖,又可以返回想要的數據package com.kbs.platform.controller;import java.util.HashMap; import java.util.Map;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping;@RequestMapping("/json") @Controller public class JsonController {//這個方法返回視圖,沒有對應的視圖就會報錯@RequestMapping("/map")public Map<String, String> getmap(){Map<String, String> map=new HashMap<>();map.put("a", "b");map.put("c", "d");map.put("d", "小家心");return map;}//這個方法返回json 不再返回視圖@RequestMapping("/body")public Map<String, String> getmap2(){Map<String, String> map=new HashMap<>();map.put("a", "b");map.put("c", "d");map.put("d", "小家心");return map;}}

?

轉載于:https://my.oschina.net/mifans/blog/779156

總結

以上是生活随笔為你收集整理的@Controller和@RestController的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。