環境與profile
spring.profiles.default
spring.profiles.active
設定上述兩引數的方法
作為dispatcherservlet的初始化引數
作為web應用的上下文引數
作為jndi條目
作為環境變數
作為jvm的系統屬性
在繼承測試類上,使用@activeprofiles註解設定
在properties檔案中設定
條件化配置
@conditional
@profile
profilecondition
自動裝配的歧義性
只針對注入時採用的是介面,而該介面有多個實現時會出現該情況;如果註冊的物件不是介面形式,而是類,預設注入是的屬性名為bean name去容器中查詢,如果沒找到,則按型別查詢,如果有多個實現,則會報異常;如果找到了對應的bean,則即使該類有多個實現,也不會報異常;
解決辦法:
@primary
@qualifier
3)自定義註解
bean的作用域
單例是無狀態的
但有時我們使用的類是易變的,他們會保持一些狀態,重用是不安全的,因為物件會被汙染,重用的時候會出現意想不到問題。
作用域包括:
單例:singleton
原型:prototype
會話:session
請求:request
scopedproxymode.inte***ces
configurablebeanfactory. scope_singleton/scope_prototype
執行時注入:
當討論依賴注入的時候,我們通常所討論的是將乙個bean引用注入到另乙個bean的屬性或構造器引數中,它通常來講指的是將乙個物件與另乙個物件進行關聯。
但bean裝配的另外乙個方面指的是將乙個值注入到bean的屬性或者構造器引數中。
屬性佔位符:$
spel:#
第三章 高階特性
當要取list,tuple和str的某個元素到某個元素,除了逐個列出以外,還可以用切片 slice 來完成.使用方法 名字 起始index 結束index l michael sarah tracy bob jack l 0 3 michael sarah tracy 表示從起始索引開始,逐個取值,...
spring 第三章節 高階裝配
spring裝載bean的時候,可以依據不同環境 全域性變數值 對不同的bean進行初始化。這樣可以讓系統根據不同環境採用最佳實現方式。開發環境 測試環境 qa環境 生產環境甚至是前端開發環境 profile spring裝配bean的時候,可以依據不同的條件判定 系統環境變數值 依賴bean是否裝...
Spring 第三章 Spring與AOP(二)
新增多個通知 使用cglib 現在想只增強單獨的目標方法,advice只能指定時間點,不能指定切入點。想實現指定切入點,就要實現顧問advisor。pointcutadvisor是顧問的一種,可以指定具體切入點,對通知進行包裝,會根據不同的通知型別,在不同的時間點,將切面織入到不同的切入點。poin...