一、當配飾檔案為xml時,若要用註解,必須加以下**用於告知spring建立容器時要掃瞄的包。
二、常用註解
分為以下類
用於建立物件的:相當於xml配置檔案中的標籤
@component:
作用:把當前類存入spring容器中
屬性:value用於指定bean的id。預設是首字母小寫的當前類名。當屬性只有value時value可不寫,直接寫id
@controller: 一般用於表現層
@service:一般用於業務層
@repository:一般用於持久層
@controller, @service, @repository和@component一樣,只是spring提供時三層物件更清晰。不屬於三層中的用@component
注意:當某個類標有這些註解時,spring的ioc會例項化物件到容器中。所以這些類必須是實現類,不能是介面,因為介面不能new,只有實現類可以。
用於注入資料的:相當於xml配置檔案中的
其他bean型別的注入:
@autowired:
作用:自動按照型別注入只要容器中由唯一的bean物件型別和要注入的型別相同,則注入成功。
如果匹配多個型別時,這是會根據變數名查詢,如果一致則成功。不一致,則報錯「expected single matching bean but found 2」,這是注入的時候需要用@qualifier來指定bean的名字。
用autowired注入時用的是預設建構函式,不需要set方法
@qualifier:
作用:在型別注入的基礎上再按照名字注入。注入類時必須與@autowired結合使用
屬性:value用於指定bean id
@recource: 直接按照bean id注入。@resource(name=「beanid」)
基本型別和string注入:
@value:
作用:用於基本型別和string注入
屬性:value 用於指定資料的值。可以是spring中的spel(spring中的el表示式)$
集合型別的注入:只能用xml實現
用於改變作用範圍的:
@scope:
作用:用於指定bean的作用範圍。常用取值singleton,prototype
和生命週期相關的:相當於xml中的init-method和destroy-method
@postconstruct: 指定初始方法
@predestory: 指定銷毀方法
spring 註解驅動 01
註解有 controller 標註是乙個控制層 service 標註是乙個業務層 repository 標註是乙個持久層 configuration 表示是乙個配置類 componentscan 表示掃瞄包與spring bean.xml檔案中的掃瞄包效果一致 下面看是示例 一 這是乙個配置類 pa...
Spring常用註解
spring常用註解 1 引入context命名空間 在spring的配置檔案中 配置檔案如下 xml xmlns context spring context 2.5.xsd 開啟配置 spring 會自動掃瞄cn.pic包下面有註解的類,完成bean的裝配。xml xmlversion 1.0 ...
Spring常用註解
在spring中常用的註解 autowired註解 不推薦使用,建議使用 resource autowired可以對成員變數 方法和建構函式進行標註,來完成自動裝配的工作。autowired的標註位置不同,它們都會在spring在初始化這個bean時,自動裝配這個屬性。要使 autowired能夠工...