关于spring常用的注解都有哪些 我们今天来回答一下这个问题:
首先是我们最最最常用的一些注解
1、@Component:
含义:通用注解 可以标注任何类
位置:标注类
2、@Repository:标注dao层的类
3、@Service:对应的标注业务层的类
4、@Controller:标注controller控制层的类
注:以上这三个注解的含义和用法都一致,只是标记的对应类不同
5、@Autowired:
含义:按类型自动装配
6、@Qualifier:
含义:按名称自动装配
7、@Configuration:
含义:声明配置类
位置:标注类
8、@Bean:
含义:注入类、一般用来注入系统类
位置:修饰方法
在需要特定功能的时候会用到的注解
9、@EnableScheduling:
含义:启动任务调度
位置:标注类
10、@EnableAspetJautoProxy:
含义:启动自动代理工厂
位置:标注类
11、@Scope:
含义:模式(单例或多例)
位置: 标注类
12、@ComponentScan:
含义:扫描组件
位置: 标注配置类
13、@Import:
含义:导入其他配置类
位置:配置类
在Controller层访问用到的注解
14、RequestMapping
含义:用户请求
位置:类或者方法
修饰类-->一级路径 (/init)
修饰方法-->二级路径 (/user/init)
替换:Servlet中的doGet或doPost方法
属性:value,path:代表请求路径
注意:有且只有一个属性的时候可以省略
Params:请求在必须要携带的参数设置
method:请求方式设置
等同于:@GetMapping、PostMapping等
15、@RequestBody
作用:获取请求体的内容,将请求体的内容转换为JavaBean
属性:Required: 是否必须有请求体,默认未true
16、@CrossOrigin
位置:Controller接口方法
含义:跨域注解,浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域,可以简单理解,如果前端端口是localhost:8080,后端端口是localhost:9090,controller配置了@CrossOrigin (没有添加其他参数,默认如何端口都可以访问)可以实现跨越访问,也可以使用其他配置类实现跨域访问。
作用: 在controller上添加@CrossOrigin注解用来开启跨域请求,让其他域的请求可以访问该controller,否则所有其他域的访问会全部被拒绝。
其实Spring的常用注解还有很多,有些我就不在这里一一列举了,我按照分类比较常用的和特定功能以及controller重要的进行了分类,希望大家可以有所收获。