我們為bean的屬性和構造器引數裝配的所有東西都是在spring的xml配置檔案中靜態定義的。同樣我們裝配其他bean的引用也都是在配置spring配置檔案時就已經確定了。但是,我們為屬性裝配的值在執行期才能知道,那又如何實現呢?
spring3引入了spring表示式語言,spel。spel是一種強大、簡潔的裝配bean的方式,它通過執行期執行的表示式將值裝配到bean的屬性或構造器引數中,使用spel,可以實現超乎想象的裝配效果,這是使用傳統的spring裝配方式難以做到的。
spel擁有許多特性,包括:使用bean的id來引用bean;呼叫方法和訪問物件的屬性;對值進行算術、關係和邏輯運算;正規表示式匹配;集合操作。
1、引用bean、properties和方法
引用其他bean
引用其他bean的屬性
引用其他bean的方法
呼叫uppercase方法
?.跟上面的區別是當selectsong方法返回null將不執行touppercase
2、操作類
Spring 3 x 資源的解析
在srping中容器的啟動,需要載入資源檔案配置的bean資訊。首先第一步就是解析資源檔案定義的bean資訊。在查閱原始碼之後,sring提供了兩種資源檔案解析。一種是通過xml,一種是通過屬性檔案 properties 這兩種方式都有相應的提供類。此筆記,在於分析spring 讀取資源檔案的整體架...
Spring3 x與4 x的區別
增加了 restcontroller annotation,就是把 controller和 reponsebody打包了,省得大家再去每個方法上加乙個 responsebody了。新加了asyncresttemplate類,可以用來構建非同步呼叫的restful client,具體用法看這兒 或者這...
筆者帶你剖析Spring3 x 集中貼
貌似已經很久沒有寫這個專題了,主要是近年來確實沒時間,且心思更多投入到寫書和專案中去了,只能後期補上。在此歸納下之前這個專題的目的,方便閱讀和查詢。詳解ssj spring3.x mvc spring3.x core jpa2.x 輕量級整合開發目錄彙總 詳解ssj spring3.x mvc sp...