@autowired和@resource区别
时间: 2023-07-17 13:56:43 浏览: 44
`@Autowired` 和 `@Resource` 都是用来标注依赖注入的注解,但它们有一些区别。
`@Autowired` 是 Spring 框架中的注解,可以用来标注字段、构造器、方法等,来告诉 Spring 容器需要自动注入的对象。它可以通过类型和名称来查找匹配的 Bean。
`@Resource` 是 Java 标准库中的注解,是 JSR-250 规范的一部分。和 @Autowired 一样可以用来标注字段和方法。不过@Resource 默认按照名称来查找 Bean,如果找不到,才会按类型来查找。
总结,两者都可以用来完成依赖注入,主要区别在于使用场景不同:使用@Autowired 更适用于 Spring 框架中,而@Resource 更适用于 Java SE环境 。
相关问题
@Autowired和@Resource区别
@Autowired和@Resource都是用来进行依赖注入的注解,但是它们有一些区别。
@Autowired是Spring提供的注解,它默认按照类型进行自动装配,如果有多个同类型的bean,则会按照属性名进行匹配。如果找不到匹配的bean,则会抛出异常。@Autowired还有一个required属性,默认为true,表示必须要找到匹配的bean,否则会抛出异常。如果将required设置为false,则表示可以不找到匹配的bean。
@Resource是JavaEE提供的注解,它默认按照名称进行自动装配,如果没有指定name属性,则会按照属性名进行匹配。如果找不到匹配的bean,则会抛出异常。@Resource还有一个type属性,可以指定要注入的bean的类型。
因此,@Autowired更加灵活,而@Resource更加严格。
@Autowired 和 @Resource 区别
@Autowired和@Resource都是用来进行依赖注入的注解,区别在于@Autowired是Spring中的注解,而@Resource是Java EE中的注解。@Autowired默认按照类型进行装配,通过byName属性指定具体名称进行装配;@Resource默认按照名称进行装配,可以指定name和type属性进行装配。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)