屬性文件中的 @RequestMapping 值
一、概述
在本教程中,我們將了解如何在屬性文件中設置@RequestMapping
值。此外,我們將使用一個實際示例來解釋所有必要的配置。
首先,讓我們定義一個基本的@RequestMapping
及其配置。
2.@ RequestMapping
基礎
首先,我們將使用@RequestMapping
創建和註釋我們的類WelcomeController
以映射網絡請求。此類將分配我們的處理程序方法getWelcomeMessage().
所以,讓我們定義它:
@RestController
@RequestMapping("/welcome")
public class WelcomeController {
@GetMapping
public String getWelcomeMessage() {
return "Welcome to Baeldung!";
}
}
此外,有趣的是,我們將使用@GetMapping
註釋getWelcomeMessage
()
以僅映射 GET 請求。正如我們所看到的,我們使用硬編碼字符串作為路徑,靜態地指示我們想要訪問的路徑。通過這樣的配置,我們可以完美的訪問我們感興趣的資源,如下圖所示:
curl http://localhost:9006/welcome
> Welcome to Baeldung!
但是,如果我們想讓路徑依賴於配置參數怎麼辦?正如我們接下來要看到的,我們可以利用application.properties
。
3.@ RequestMapping
和屬性文件
首先,正如我們在文檔中看到的那樣, @RequestMapping
註釋中的模式支持針對本地屬性和/或系統屬性和環境變量的 ${…} 佔位符。所以這樣,我們可以將我們的屬性文件鏈接到我們的控制器。
一方面,我們需要自己創建屬性文件。我們將它放在resources
文件夾中並將其命名為application.properties
。然後,我們必須使用我們選擇的名稱創建屬性。在我們的例子中,我們將設置名稱welcome-controller.path
並將我們想要的值設置為請求的端點。現在,我們的application.properties
看起來像這樣:
welcome-controller.path=welcome
另一方面,我們必須修改我們在@RequestMapping
中靜態建立的路徑,以便它讀取我們創建的新屬性:
@RestController
@RequestMapping("/${welcome-controller.path}")
public class WelcomeController {
@GetMapping
public String getWelcomeMessage() {
return "Welcome to Baeldung!";
}
}
所以,通過這種方式,Spring 將能夠映射端點的值,當用戶訪問該 URL 時,該方法將負責處理它。我們可以在下面看到如何使用相同的請求顯示相同的消息:
curl http://localhost:9006/welcome
> Welcome to Baeldung!
4。結論
在這篇簡短的文章中,我們學習瞭如何在屬性文件中設置@RequestMapping
值。此外,我們創建了一個功能齊全的示例,幫助我們理解所解釋的概念。
本文的完整源代碼可在 GitHub 上獲得。