首頁 > Java > java教程 > 主體

SpringBoot http中@RestController的作用是什麼

王林
發布: 2023-05-20 15:31:06
轉載
832 人瀏覽過

@RestController

@RestController = @Controller @ResponseBody組成,等號右邊兩位同志簡單介紹兩句,就明白我們@RestController的意義了:

@Controller 將當前修飾的類別注入SpringBoot IOC容器,使得從該類別所在的項目跑起來的過程中,這個類別就被實例化。當然也有語義化的作用,即代表該類別是充當Controller的作用

@ResponseBody 它的作用簡短截說就是指該類別中所有的API介面返回的數據,甭管你對應的方法返回Map或其他Object,它會以Json字串的形式傳回給客戶端,本人嘗試了一下,如果回傳的是String類型,則仍然是String。

@RestController@RequestMapping("test")public class SampleController {  

@GetMapping  public Map testGet() {    

return new HashMap(){ {      

put("name", "springboot");    

}};  

##}  

@GetMapping(path = "str")  ##}  

@GetMapping(path = "str")  

public String testGetStr() {    return "OK";  }}

這部分程式碼對Map回傳則是JSON String,而對String仍然是String

當將@ RestController換成@Controller之後,對於/test的回傳值如下圖:

從報錯可以看見,當@Controller修飾的時候,Spring以為會回傳一個View(也就是MVC中的那C)但是回傳的東西卻是一個Map。 ###

以上是SpringBoot http中@RestController的作用是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板