@configuration
@import()
/** * @import 匯入元件,id預設為元件的全類名
*/public
class
mainconfig2
/** * 按照一定條件進行判斷,滿足條件給定容器中註冊bean
** 如果系統是windows 給容器中註冊 @bean("bill")
* 如果系統是linux 給容器中註冊 @bean("linus")
** -dos.name=linux
*/// @conditional() 也可以新增到類上,如果當前容器滿足當前條件才會被註冊,類中註解統一設定
@conditional()
@bean
("bill"
)public person person01()
@conditional()
@bean
("linus"
)public person person02()
/***
* 給容器註冊元件
* 1)包掃瞄+元件標註註解 自己寫的類
** 2)@bean[匯入第三方包裡面的元件]
** 3)@import [快速給容器中匯入元件]
* 1、@import(要匯入到容器中的元件,容器中就會自動註冊這個元件,id預設為全類名)
* 2、@importselector:返回需要匯入到元件中的類名陣列
* 3、@importbeandefinitionregistrar:通過呼叫乙個方法可以給容器中新增一些元件。
* 手動注入
* 4)使用spring提供的factorybean(工廠bean)
* 1、預設獲取到的是工廠bean呼叫的getobject建立的物件
* 2、要獲取工廠bean本省,我們需要給id前面加乙個&符號
* &colo***ctorybean**
*/@bean
public colo***ctorybean colo***ctorybean()
}
首先這裡介紹一下簡單常用的兩種將組建注入類的方式
1.使用@bean 的方式
2.使用@component的方式
第一種方式可以直接在配置類中注入,第二種方式使用包掃瞄的方式將組建加入到容器中。
3.使用@import
4.使用spring提供的factorybean(工廠模式)
對於工廠模式,大家可以自己找找有關的資料。當我們需要引入到外部的元件的時候可以使用@import註解
還可以通過手動注入的方式
這裡我們提供乙個通過工廠方式註冊元件的方式
繼承factorybean介面
//建立乙個spring定義的工廠bean
public
class
colo***ctorybean
implements
factorybean
@override
public class<
?>
getobjecttype()
/** * 是否為單例項
* @return
* true 這個bean是單例項,在容器中儲存乙份
* false 表示這個bean是乙個多例項的方式,
*/@override
public
boolean
issingleton()
}
在這裡我們看到我們在實現介面方法的時候在getobject()方法中注入的是乙個color物件,在我們後期使用的時候就會看到
private
static
void
test06()
我們在獲取兩個物件的時候時候拿到的同乙個物件,就可以證明我們在使用的時候真正的獲取到的是在我們容器載入的時候建立的物件。如果我們想要獲取到我們工廠類物件只需要在物件前面加上&符號即可。這種方式在我們的beanfactory中也提到了。
public
inte***ce
beanfactory
實現condition介面
//判斷是windows系統
public
class
windowscondition
implements
condition
return
false;}
}
實現condition介面
//判斷是linux系統
public
class
linuxcondition
implements
condition
return
false;}
}
通過這種方式就可以實現在我們不同的操作環境向容器中注入對應的元件。 spring基於註解方式實現事務
環境搭建 資料來源,資料庫驅動 spring jdbc模組org.springframework groupid spring jdbc artifactid 4.3.12 release version dependency c3p0 groupid c3p0 artifactid 0.9.1 2...
Spring 基於註解的方式配置bean
1.常用的元件註解 component 用來標識乙個普通元件 repository 用來標識乙個持久化層的元件 service 用來標識乙個業務邏輯層的元件 controller 用來標識乙個表現層的元件 如果想要將某些類交給ioc容器管理,除了在類上新增以上註解之外,還需要在spring的配置 檔...
spring基於註解的方式配置Bean
要把乙個bean加上註解然後放在ioc容器裡面,需要在classpath中先進行元件掃瞄 component 基本註解,標識了乙個手spring管理的元件 respository 標識持久層元件 service 標識服務層 業務層 元件 controller 標識表現層元件 base package...