西沙璞玉
          愛不容易
          posts - 0,comments - 4,trackbacks - 0

          @Resource 的作用相當于 @Autowired,只不過 @Autowired 按 byType 自動注入,面 @Resource 默認按 byName 自動注入罷了。@Resource 有兩個屬性是比較重要的,分別是 name 和 type,Spring 將
          @Resource 注釋的 name 屬性解析為 Bean 的名字,而 type
          屬性則解析為 Bean 的類型。所以如果使用 name 屬性,則使用 byName 的自動注入策略,而使用 type 屬性時則使用 byType
          自動注入策略。如果既不指定 name 也不指定 type 屬性,這時將通過反射機制使用 byName 自動注入策略。


          Resource 注釋類位于 Spring 發布包的 lib/j2ee/common-annotations.jar
          類包中,因此在使用之前必須將其加入到項目的類庫中。來看一個使用 @Resource
          的例子:


          清單 16. 使用 @Resource 注釋的
          Boss.java





          package com.baobaotao;
          
          import javax.annotation.Resource;
          
          public class Boss {
              // 自動注入類型為 Car 的 Bean
              @Resource
              private Car car;
          
              // 自動注入 bean 名稱為 office 的 Bean
              @Resource(name = "office")
              private Office office;
          }


          一般情況下,我們無需使用類似于 @Resource(type=Car.class) 的注釋方式,因為 Bean 的類型信息可以通過
          Java 反射從代碼中獲取。


          要讓 JSR-250 的注釋生效,除了在 Bean 類中標注這些注釋外,還需要在 Spring 容器中注冊一個負責處理這些注釋的 BeanPostProcessor





          <bean 
            class="org.springframework.context.annotation.CommonAnnotationBeanPostProcessor"/>


          CommonAnnotationBeanPostProcessor 實現了
          BeanPostProcessor 接口,它負責掃描使用了 JSR-250 注釋的
          Bean,并對它們進行相應的操作。

          posted on 2012-04-06 11:36 @趙 閱讀(148) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          哥哥最近不是很忙
          主站蜘蛛池模板: 类乌齐县| 调兵山市| 聂荣县| 阿瓦提县| 集贤县| 麟游县| 平陆县| 吉木萨尔县| 宜州市| 巴林左旗| 安达市| 方城县| 永善县| 育儿| 皋兰县| 昭觉县| 建瓯市| 上蔡县| 开封县| 缙云县| 瓦房店市| 佛学| 江津市| 吉水县| 许昌县| 休宁县| 金平| 杭州市| 陵水| 丹阳市| 荥经县| 克东县| 慈利县| 永丰县| 南部县| 砀山县| 安福县| 铜陵市| 依兰县| 明水县| 杭锦后旗|