アノテーション付きコントローラー

Spring MVC は、@Controller および @RestController コンポーネントがアノテーションを使用してリクエストマッピング、リクエスト入力、例外処理などを表現するアノテーションベースのプログラミングモデルを提供します。アノテーション付きコントローラーには柔軟なメソッドシグネチャーがあり、基本クラスを継承したり、特定のインターフェースを実装したりする必要はありません。次の例は、アノテーションによって定義されたコントローラーを示しています。

  • Java

  • Kotlin

@Controller
public class HelloController {

	@GetMapping("/hello")
	public String handle(Model model) {
		model.addAttribute("message", "Hello World!");
		return "index";
	}
}
import org.springframework.ui.set

@Controller
class HelloController {

	@GetMapping("/hello")
	fun handle(model: Model): String {
		model["message"] = "Hello World!"
		return "index"
	}
}

前の例では、メソッドは Model を受け入れ、ビュー名を String として返しますが、他の多くのオプションが存在し、この章で後ほど説明します。

spring.io のガイドとチュートリアルでは、このセクションで説明するアノテーションベースのプログラミングモデルを使用します。