注解控制器

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 上的指南和教程使用了本节描述的基于注解的编程模型。