知識庫 / Spring / Spring MVC RSS 訂閱

Spring MVC – 將根 URL 映射到頁面

Spring MVC
HongKong
8
11:46 AM · Dec 06 ,2025

1. 概述

在本教程中,我們將學習如何將根 URL 映射到 Spring MVC 中的一個頁面。

首先,我們將瞭解 Spring MVC 的默認行為。然後,我們將討論在這種行為被抑制的場景。最後,我們將學習如何提供我們自己的自定義映射。

2. 項目設置

我們可以使用 Spring Initializr 生成項目,同時添加 Spring Web Starter 依賴。

如果手動添加 依賴,則需要在 pom.xml 文件中添加以下內容:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

2.1. 創建索引頁面

讓我們在 src/main/resources/templates 文件夾中創建一個頁面。 我們將此頁面命名為 index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Index Page</title>
</head>
<body>
    <h1>Hello World!</h1>
</body>
</html>

2.2. 默認行為

啓動應用程序並觀察 Spring MVC 的默認行為。

應用程序啓動並運行後,請導航到根 URL:http://localhost:8080/

如您所見,索引頁面在不需要映射的情況下即可顯示。

3. 修改默認行為

讓我們來看一個默認行為被抑制的場景。

3.1. @EnableWebMvc

讓我們為我們的 RootMappingApplication 類添加 @EnableWebMvc 註解:

@SpringBootApplication
@EnableWebMvc
public class RootMappingApplication {
    public static void main(String[] args) {
        SpringApplication.run(RootMappingApplication.class, args);
    }
}

讓我們運行該應用程序並導航到根 URL:http://localhost:8080/。 這一次,我們收到了一個錯誤。

這是因為 @EnableWebMvc 註解禁用了 Spring Boot 自動執行的 Web 應用配置。

要解決這個問題,我們需要提供自定義映射。 讓我們看看如何做。

4. 自定義映射

讓我們看看提供自定義映射的不同方法。

4.1. 使用控制器

通過使用控制器,可以提供路徑和文件映射。

讓我們先創建一個控制器類:

@Controller
public class RootController {
    @GetMapping("/")
    public String index() {
        return "index";
    }
}

此控制器類有一個方法映射到“/”路徑。該方法僅返回字符串“index”。在解釋返回值時,Spring MVC 會在 src/main/resources/templates 文件夾中查找同名的模板。

如果運行應用程序並導航到根 URL:http://localhost:8080/, 我們將看到索引頁面顯示。

這是一種提供自定義映射的簡單方法。當只有一個頁面需要映射時,這種方法可以很好地使用。但是,如果需要映射多個頁面,這種方法可能會變得繁瑣。

讓我們看看提供自定義映射的更有效方法。

4.2. 使用 WebMvcConfigurer 接口

通過使用 WebMvcConfigurer 接口,提供路徑和文件映射的另一種方式。

讓我們首先創建一個配置類:

@Configuration
public class WebConfig implements WebMvcConfigurer {
    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        registry.addViewController("/").setViewName("index");
    }
}

此配置類實現了 WebMvcConfigurer 接口。它覆蓋了 addViewControllers() 方法以添加視圖控制器。該視圖控制器映射到“/”路徑,並返回 index 視圖。

再次説明,如果運行應用程序並導航到根 URL:http://localhost:8080/,我們將看到首頁。

請注意,如果控制器和配置都為同一路徑提供映射,則控制器優先。

5. 結論

在本文中,我們學習瞭如何將根 URL 映射到 Spring MVC 中的一個頁面。我們討論了 Spring MVC 的默認行為以及自定義配置如何覆蓋這些默認行為。

我們還研究了兩種提供自定義映射的方法:通過使用控制器和通過使用 <em >WebMvcConfigurer</em> 接口。

user avatar
0 位用戶收藏了這個故事!
收藏

發佈 評論

Some HTML is okay.