Annotation
Annotation
@RestController 对外提供HTTP服务
等同于Class name @Controller+ Function Method name@ResponseBody,默认以Json格式返回给前端。Spring-boot-starter-web默认通过JacksonHttpMessageConvertersConfiguration装配Spring-boot-starter-josn作为数据处理的格式。
@Service 依赖注入
声明后台服务类作为逻辑或者业务处理模块。
@ResponseBody
标识返回值是Jackson 字符串
@ResponseBody
public AjaxResponse bindException(MethodArgumentNotValidException e)
@ExceptionHandler(MethodArgumentNotValidException.class)
发生输入不符合要求时,客户端验证失败时,执行该标注的方法内的代码。
Annotation的Annotation
@Target
ElementType.PACKAGE:该注解只能声明在一个包名前。
ElementType.ANNOTATION_TYPE:该注解只能声明在一个注解类型前。
ElementType.TYPE:该注解只能声明在一个类前。
ElementType.CONSTRUCTOR:该注解只能声明在一个类的构造方法前。
ElementType.LOCAL_VARIABLE:该注解只能声明在一个局部变量前。
ElementType.METHOD:该注解只能声明在一个类的方法前。
ElementType.PARAMETER:该注解只能声明在一个方法参数前。
ElementType.FIELD:该注解只能声明在一个类的字段前
@Retention
RetentionPolicy.SOURCE : 注解只保留在源文件,当Java文件编译成class文件的时候,注解被遗弃;
RetentionPolicy.CLASS : 注解被保留到class文件,但jvm加载class文件时候被遗弃,这是默认的生命周期;
RetentionPolicy.RUNTIME : 注解不仅被保存到class文件中,jvm加载class文件之后,仍然存在