@Controller @ResponseBody @RestController
@Controller:标识一个Spring类是Spring MVC controller处理器
@ResponseBody
可以返回实体对象,通常用来返回JSON数据或者是XML数据。使用@ResponseBody接受数据时前端只能使用POST方式,因为GET方式无请求体,所以不能使用GET方式
@RestController
添加在方法上
@RestController是@Controller和@ResponseBody的结合体,两个标注合并起来的作用,@RestController类中的所有方法只能返回String、Object、Json等实体对象,不能跳转到模版页面。
@RequestMapping
可以在控制器类上和控制器类中的方法上使用
@RequestMapping表示共享映射,如果没有指定请求方式,将接收GET、POST、HEAD、OPTIONS、PUT、PATCH、DELETE、TRACE、CONNECT所有的HTTP请求方式。@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping 都是HTTP方法特有的快捷方式@RequestMapping的变体,分别对应具体的HTTP请求方式的映射注解。
@Configuration
指示一个类声明一个或多个@Bean方法,并且可以由Spring容器处理,以便在运行时为这些bean生成BeanDefinition和服务请求
@RequestBody
简单地说,在@RequestBody注解的帮助下,Spring MVC会自动将HttpRequest body反序列化为一个Java对象,通常会将HttpRequest body映射到一个DTO或DO
@RequestParam
可以从请求中提取查询参数,表单参数甚至文件。
注解的属性:name,value,required和defaultValue
name属性表示参数名称
required表示该参数是否必选,true表示必须有该参数,且默认值为true
defaultValue表示参数默认值
@CrossOrigin
允许对跨域请求进行灵活授权,包含methods、value、allowedHeaders等参数