## **@Autowired和@Resouce的區別**
`@Autowired`功能雖說非常強大,但是也有些不足之處。比如:比如它跟spring強耦合了,如果換成了JFinal等其他框架,功能就會失效。
`@Resource`是JSR-250提供的,它是Java標準,絕大部分框架都支持。
除此之外,有些場景使用`@Autowired`無法滿足的要求,改成`@Resource`卻能解決問題。接下來,我們重點看看@Autowired和@Resource的**區別**。
* @Autowired默認按byType自動裝配,而@Resource默認byName自動裝配。
* @Autowired只包含一個參數:required,表示是否開啟自動準入,默認是true。而@Resource包含七個參數,其中最重要的兩個參數是:name 和 type。
* @Autowired如果要使用byName,需要使用@Qualifier一起配合。而@Resource如果指定了name,則用byName自動裝配,如果指定了type,則用byType自動裝配。
* @Autowired能夠用在:構造器、方法、參數、成員變量和注解上,而@Resource能用在:類、成員變量和方法上。
* @Autowired是spring定義的注解,而@Resource是JSR-250定義的注解。
此外,它們的裝配順序不同。
**@Autowired的裝配順序如下:**

> 作者:蘇三說技術
> 鏈接:https://www.zhihu.com/question/39356740/answer/1907479772
> 來源:知乎
> 著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
- 前言
- 第一部分 計算機網絡與操作系統
- 大量的 TIME_WAIT 狀態 TCP 連接,對業務有什么影響?怎么處理?
- 性能占用
- 第二部分 Java基礎
- 2-1 JVM
- JVM整體結構
- 方法區
- JVM的生命周期
- 堆對象結構
- 垃圾回收
- 調優案例
- 類加載機制
- 執行引擎
- 類文件結構
- 2-2 多線程
- 線程狀態
- 鎖與阻塞
- 悲觀鎖與樂觀鎖
- 阻塞隊列
- ConcurrentHashMap
- 線程池
- 線程框架
- 徹底搞懂AQS
- 2-3 Spring框架基礎
- Spring注解
- Spring IoC 和 AOP 的理解
- Spring工作原理
- 2-4 集合框架
- 死磕HashMap
- 第三部分 高級編程
- Socket與NIO
- 緩沖區
- Bybuffer
- BIO、NIO、AIO
- Netty的工作原理
- Netty高性能原因
- Rabbitmq
- mq消息可靠性是怎么保障的?
- 認證授權
- 第四部分 數據存儲
- 第1章 mysql篇
- MySQL主從一致性
- Mysql的數據組織方式
- Mysql性能優化
- 數據庫中的樂觀鎖與悲觀鎖
- 深度分頁
- 從一條SQL語句看Mysql的工作流程
- 第2章 Redis
- Redis緩存
- redis key過期策略
- 數據持久化
- 基于Redis分布式鎖的實現
- Redis高可用
- 第3章 Elasticsearch
- 全文查詢為什么快
- battle with mysql
- 第五部分 數據結構與算法
- 常見算法題
- 基于數組實現的一個隊列
- 第六部分 真實面試案例
- 初級開發面試材料
- 答案部分
- 現場編碼
- 第七部分 面試官角度
- 第八部分 計算機基礎
- 第九部分 微服務
- OpenFeign工作原理