注解控制器

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