@Autowired
使构造函数、字段、设值方法或配置方法可以被Spring依赖注入工具自动装配(Autowired)。
用于字段:字段在bean构造之后,任何配置方法被调用之前被注入。被注入的类需要是一个组件(@Component)。该注解不要求字段是public。
依赖注入的步骤为:
定义一个组件(@Component或其子类型)
客户代码声明某字段需要自动装配(@Autowired)
这段客户代码需要被扫描到(所在类被标记为@Controller或被其他组件装配)
@Component
表明该类是一个组件,当使用基于注解的配置和类路径扫描时,这些类被认为是自动检测的候选类。Component的子类型可以更好地表示“组件”这个语义。
@Controller
表明该类是一个“控制器”(比如web控制器),该类作为一种特殊的组件,允许通过类路径扫描自动检测实现类。它通常与基于@RequestMapping的注解处理方法结合使用。
@ResponseBody
作用在方法上,表明方法返回值绑定到web响应体。作用在类上, 相当于类下所有方法声明了该注解。
@RequestBody
指示这个方法参数应绑定到web请求体。用于将Request请求的body部分绑定到Java对象上去(Content-Type需要为application/json),系统使用HttpMessageConverter或者自定义的HttpMessageConverter执行转换逻辑。可以选择使用@Valid注解参数以支持自动验证。
@NotEmpty 字符串不能为 null 也不能为空
@NotBlank 字符串非 null,并且必须包含一个非空白字符