Spring MVC 提供了一个基于注解的编程模型,其中 @Controller
和 @RestController
组件使用注解来表达请求映射、请求输入、异常处理等内容。注解的控制器具有灵活的方法签名,不需要扩展基类,也不需要实现特定的接口。下面的例子显示了一个由注解定义的控制器:
@Controller
public class HelloController {
@GetMapping("/hello")
public String handle(Model model) {
model.addAttribute("message", "Hello World!");
return "index";
}
}
在前面的例子中,该方法接受一个 Model,并返回一个字符串的视图名称,但也存在许多其他选项,在本章后面会有解释。
:::info spring.io 上的指南和教程使用本节中描述的基于注解的编程模型。 :::