注解控制器
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 上的指南和教程使用了本节中描述的基于注解的编程模型。
章节摘要
📄️ 声明
请参阅 Reactive 技术栈中的等效内容
📄️ 映射请求
请参阅 Reactive 技术栈中的等效内容
🗃️ 处理方法
19 个项目
📄️ 模型
请参阅 Reactive 技术栈中的等效内容
📄️ @InitBinder
@InitBinder 是 Spring 框架中的一个注解,用于在控制器中注册自定义的数据绑定器。通过这个注解,你可以在请求处理之前对传入的数据进行预处理或格式化。通常在控制器方法上使用 @InitBinder 注解来指定一个方法,该方法会在每次请求处理之前被调用,以便对请求参数进行自定义绑定。
📄️ 验证
查看 Reactive 技术栈中的等效内容
📄️ 异常处理
请参阅 Reactive 技术栈中的等效内容
📄️ Controller Advice
请参阅 Reactive 技术栈中的等效内容