視圖控制器

這是定義 ParameterizableViewController 的快捷方式,該控制器在被調用時立即轉發到視圖。您可以在靜態情況下使用它,當在視圖產生回應之前沒有 Java 控制器邏輯要執行時。

以下範例將對 / 的請求轉發到名為 home 的視圖

  • Java

  • Kotlin

  • Xml

@Configuration
public class WebConfiguration implements WebMvcConfigurer {

	@Override
	public void addViewControllers(ViewControllerRegistry registry) {
		registry.addViewController("/").setViewName("home");
	}
}
@Configuration
class WebConfiguration : WebMvcConfigurer {

	override fun addViewControllers(registry: ViewControllerRegistry) {
		registry.addViewController("/").setViewName("home")
	}
}
<mvc:view-controller path="/" view-name="home"/>

如果 @RequestMapping 方法對應到任何 HTTP 方法的 URL,則視圖控制器不能用於處理相同的 URL。這是因為 URL 與註解控制器匹配被認為是端點所有權的強烈指示,因此可以將 405 (METHOD_NOT_ALLOWED)、415 (UNSUPPORTED_MEDIA_TYPE) 或類似的回應傳送給用戶端,以協助偵錯。因此,建議避免跨註解控制器和視圖控制器拆分 URL 處理。