george

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            12 Posts :: 0 Stories :: 17 Comments :: 0 Trackbacks

          2009年12月7日 #

          spring注解使用了有一段時間了,現做幾個就簡單的記錄,具體是使用方式不用多說網上很多,這里便于記憶簡單整理一下。
          1.注入的屬性有2種方式
             1.1 @Autowired(按類型type注入)
             1.2 @Resource(按名字name注入),
              另:如果遇到重復使用@Qualifer標注別名
                     如果不需要某些屬性注入可以設置Autowired或resources的required屬性為false
          2.將bean納入spring容器有4種方式
              2.1 @Component(表示是spring容器中的bean,比較中立,沒有其他含義)
              2.2 @Controller ,@Service ,@Repository,這3種和@Compnent功能一樣,只是用于三層架構中的控制,業務及持久層。目前只是命名不同。
              另:@Scope可以定義bean的作用范圍。
          3.對于注解需要配置context:component-scan定義初始化容器掃描的目錄。
          <context:component-scan base-package="com.blog">
              
          <context:include-filter type="regex" 
                  expression
          ="com\.blog\.service\..*"/>
              
          <context:exclude-filter type="aspectj" 
                  expression
          ="com.blog.util..*"/>
          </context:component-scan>

          4.注釋配置和 XML 配置的適用場合

              4.1注釋配置不一定在先天上優于 XML 配置。如果 Bean 的依賴關系是固定的,(如 Service 使用了哪幾個 DAO 類),這種配置信息不會在部署時發生調整,那么注釋配置優于 XML 配置;反之如果這種依賴關系會在部署時發生調整,XML 配置顯然又優于注釋配置,因為注釋是對 Java 源代碼的調整,您需要重新改寫源代碼并重新編譯才可以實施調整。
              4.2如果 Bean 不是自己編寫的類(如 JdbcTemplate、SessionFactoryBean 等),注釋配置將無法實施,此時 XML 配置是唯一可用的方式。
              4.3注釋配置往往是類級別的,而 XML 配置則可以表現得更加靈活。比如相比于 @Transaction 事務注釋,使用 aop/tx 命名空間的事務配置更加靈活和簡單。
              4.4所以在實現應用中,我們往往需要同時使用注釋配置和 XML 配置,對于類級別且不會發生變動的配置可以優先考慮注釋配置而對于那些第三方類以及容易發生調整的配置則應優先考慮使用 XML 配置
          參考資料: 
          http://kdboy.javaeye.com/blog/419159
          http://www.ibm.com/developerworks/cn/java/j-lo-spring25-ioc/

          posted @ 2009-12-07 23:21 georgeliu 閱讀(724) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 连南| 土默特左旗| 河北省| 高陵县| 白沙| 滕州市| 仲巴县| 塘沽区| 百色市| 黄大仙区| 阜平县| 桑植县| 赞皇县| 牡丹江市| 建湖县| 木兰县| 二连浩特市| 正阳县| 阳新县| 徐州市| 景东| 鄯善县| 璧山县| 菏泽市| 涡阳县| 郎溪县| 中超| 田林县| 浦东新区| 晴隆县| 寿光市| 隆德县| 岱山县| 广安市| 武川县| 威远县| 曲周县| 阿尔山市| 海阳市| 当阳市| 无棣县|