java注解
一、java的内置注解(java 7 后额外添加了后三个注解)
- @Override-重写方法
- @Deprecatd 过时方法使用会编译警告
- @SuppessWarnings 忽略声明警告
- @Target --标记注解为哪个java成员
- @Inherited 标记注解继承哪个注解
- @SafeVarargs 忽略任何参数关于 泛型变量的方法和构造函数产生的警告
- @FunctionalInterface 标识一个匿名函数或函数式接口
- @Repeatable 标识某注解可以在同一个声明上使用多次。
二、常用注解
@Controller
//控制器 @component扩展 用于指示Spring类的实例是一个控制器,该注解不需要在实现COntroller接口 //只需要加入控制器类上 ,spring扫描机制加会找到这个类 <context:component-scan base-package=“com”/> //需要在xml中 添加 包扫描配置信息
@RequestMapping
//用于映射一个请求或者一个方法,可以放在方法或者类上面 //在类上 : 该类中的所有方法到将映射为相对于类级别的请求,表示该控制器所有请求映射到value属性值所指定的路劲下 /user/selectUser //在方法上 : 作为请求处理方法在程序接受到对应的url请求时调用
一些组合注解
@RestController
相当于@ResponseBody和@Controller的组合注解
原来返回json需要@ResponseBody和@Controller配合。
@ResponseBody
将java对象转为json格式的数据,使用此注解之后不会再走视图处理器
可以把后台传到前端的数据自动转换为json
用来接收前端传递给后台的json字符串 一般是post请求 一个请求,只有一个RequestBody 看大佬的去
@RequestParam
作用 :传递参数 在接收前端传递的参数时,参数的名字必须有对应的名字 如果没有对应的名字会报400 一个请求,可以有多个RequestParam。 方法中的参数 value:参数名字,即入参的请求参数名字,如username表示请求的参数区中的名字为username的参数的值将传入; required:是否必须,默认是true,表示请求中一定要有相应的参数,否则将报404错误码;
@ExceptionHandler
作用 : 自定义注解 有什么用 :可以当成异常拦截器 用在方法上 结合ControllerAdvice注解 可以进行全局异常拦截处理
@ControllerAdvice
这是一个增强的 Controller 用来 全局异常处理 全局数据绑定 全局数据预处理
|