Controller当中解析参数的注解及其用法
在Spring Boot的Controller中,常用于解析请求参数的注解有以下几种:
@RequestParam:用于从请求中获取单个参数值。
@GetMapping("/example") public String handleRequest(@RequestParam String name) { // 处理name参数 }
@PathVariable:用于从URL路径中获取参数值。
@GetMapping("/example/{id}") public String handleRequest(@PathVariable Long id) { // 处理id参数 }
@RequestBody:用于获取请求体中的内容,并将其转换为对象。
@PostMapping("/example") public String handleRequest(@RequestBody User user) { // 处理用户对象 }
@RequestHeader:用于获取请求头中的值。
@GetMapping("/example") public String handleRequest(@RequestHeader("User-Agent") String userAgent) { // 处理User-Agent请求头 }
@RequestAttribute:用于获取请求属性中的值。
@GetMapping("/example") public String handleRequest(@RequestAttribute("userId") Long userId) { // 处理userId请求属性 }
@RequestPart:用于处理Multipart请求中的文件上传。
@PostMapping("/upload") public String handleUpload(@RequestPart("file") MultipartFile file) { // 处理上传的文件 }
这些注解可以根据具体的情况选择使用,用于从HTTP请求中获取参数值、请求体内容、请求头信息等,并将其映射到Controller方法的参数中,方便在方法中进行处理。