欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Springboot中的Controller解析

 更新時(shí)間:2023年09月21日 10:52:14   作者:ShineLee  
這篇文章主要介紹了Springboot中的Controller解析,Controller是SpringBoot的基本組件,也是MVC結(jié)構(gòu)的組成部分,其作用是將用戶提交來(lái)的請(qǐng)求通過(guò)URL匹配,分發(fā)給不同的接收器,該接收器會(huì)對(duì)其進(jìn)行相應(yīng)處理,然后返回處理結(jié)果,需要的朋友可以參考下

Controller

1、作用

Controller是SpringBoot的基本組件,也是MVC結(jié)構(gòu)的組成部分,其作用是將用戶提交來(lái)的請(qǐng)求通過(guò)URL匹配,分發(fā)給不同的接收器(具體的Controller),該接收器會(huì)對(duì)其進(jìn)行相應(yīng)處理,然后返回處理結(jié)果。

2、基本樣式

一個(gè)經(jīng)典的Controller類(lèi)似下邊這樣:

package com.example.demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping(value = "/api/user")
public class IndexController {
  @RequestMapping(value = {"index", "/"})
  public String index(Model model) {
    return "index";
  }
}

3、說(shuō)明

@Controller

寫(xiě)于Controller類(lèi)之前;

告知Spring容器這是一個(gè)Controller。

@RequestMapping

寫(xiě)于Controller類(lèi)或Controller類(lèi)中的某個(gè)方法之前;

表示這個(gè)類(lèi)/方法負(fù)責(zé)處理哪個(gè)URL

Model model

處理URL的方法需要傳入Model參數(shù);

該參數(shù)的作用是向Model傳遞數(shù)據(jù);

Model將來(lái)會(huì)傳遞給View顯示出來(lái)。

return "index"

return "/registerResult"

函數(shù)返回值,表示要訪問(wèn)的文件名。

具體后綴取決于模板引擎,比如對(duì)于jsp就需要訪問(wèn)"index.jsp"文件

4、@RequestMapping作用

告訴Spring該方法或類(lèi)是用于映射到哪個(gè)URL的,通常情況下可以添加如下信息:

@RequestMapping(
    value = "/test",
    params = {"name","userId"},
    method = {RequestMethod.GET},
    consumes = {"text/plain", "application/*"},
    produces = "text/plain",
    headers = "content-type=text/*"
)

分別表示

  • value:路徑,類(lèi)似"/action/info"這種;
  • params:參數(shù);
  • method:請(qǐng)求方法——GET、POST、PUT……;
  • consumes:request請(qǐng)求提交的內(nèi)容類(lèi)型(Content-Type);
  • produces:返回內(nèi)容的類(lèi)型;
  • headers:Header等。

通常只需要value,有時(shí)可能會(huì)用到method表示請(qǐng)求方法,默認(rèn)是RequestMethod.GET,有時(shí)可能是RequestMethod.POST

當(dāng)注解作用于類(lèi)時(shí),類(lèi)中所有方法都會(huì)在這個(gè)基礎(chǔ)上再進(jìn)行過(guò)濾。例如:

@Controller
@RequestMapping("/path1")
public class TestController {
  @RequestMapping("/path2")
  @ResponseBody
  public String index() {
    return "ok";
  }
}

這個(gè)函數(shù)就會(huì)匹配"/path1/path2"這個(gè)地址

到此這篇關(guān)于Springboot中的Controller解析的文章就介紹到這了,更多相關(guān)Springboot的Controller內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論