簡體   English   中英

@RequestMapping注釋中路徑和變量之間的Spring MVC差異

[英]Spring MVC Diffrence between Path & Variable in @RequestMapping Annotation

我想知道在Controller類中Spring MVC中的PathVariable之間有什么區別。

@RequestMapping("/home")
@RequestMapping(value = "/home")
@RequestMapping(path = "/home")

基於Spring文檔Spring 5注釋類型RequestMapping路徑是value的別名,值是路徑的別名。 我想知道這3個RequestMapping的定義和區別。

@RequestMapping(“/ home”)和@RequestMapping(value =“/ home”)之間沒有區別。但是如果你想添加一些其他參數,你必須使用,

@GetMapping(value = "/home/{ABC}", consumes = MediaType.ALL_VALUE)

因為如果寫,

@GetMapping("/getTodayActivity/{millis}", consumes = MediaType.ALL_VALUE)

然后它會編譯錯誤,所以只想使用更多參數然后你必須使用“值”

根據這一點 ,當您使用類級別或方法級別時,@ @RequestMapping("/home")@RequestMapping(value = "/home")之間沒有區別。

但是,你可以使用@RequestMapping(value={"/method1","/method1/second"})傳遞多個變量@RequestMapping(value={"/method1","/method1/second"})

@RequestMapping("/home")@RequestMapping(value = "/home")之間沒有區別。 如果只有一個映射,則可以快速使用前者;如果有多個URL映射到同一個位置,則可以快速使用前者,例如@RequestMapping(value={"/home","/home2","/home2/home3"})

同樣, 路徑也相同。 如果你看一下它們的定義,它們基本上是別名的別名:

價值定義:

@AliasFor(value="path")
public abstract java.lang.String[] value
    ...

路徑的定義:

@AliasFor(value="value")
public abstract java.lang.String[] path
    ...

至於所有定義,您可以隨時訪問官方文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM