SpEL
一、特性:
使用Bean的id來引用Bean
調用方法和訪問對象的屬性
對值進行算術,關係和邏輯運算
正則表達式匹配
集合操做
二、基本原理:
SpEL表達式的首頁目標是經過計算得到某個值。在計算這個數值的過程當中,會使用到其餘的值,並會對這些值進行操做。
最簡單的SpEL求值或許是對字面值、Bean的屬性或者某個類的常量進行求值。
a 字面值
<property name="count" value="#{5}"/>
<property name="message" value="this value is #{5}"/>
<property name="count" value="#{'string'}"/>
<property name="count" value="#{false}"/>
b 引用Bean、properties
<bean id="duke" class="com.springinaction.springidol.Juggler"/>
<property name="instrument" value="#{duke}"/>
<property name="instrument" value="#{duke.name}"/>
c 操做類
在SpEl中,使用T()運算符會調用類做用域的方法和常量。
<property name="multiplier" value="#T(java.lang.Math).PI"/>
d 基本運算操做
f 條件表達式
<property name="instrument" value="#{1==2?true:false}"/>
g 正則表達式
h 在SpEL中篩選集合
public class city{
private String name;
private String state;
private int population;
}
<util:list id="cities">
<bean class ="City" p:name="Chicago" p:state="1L" p:population="2853114"/>
<bean class ="City" p:name="Atkanta" p:state="GA" p:population="537958"/>
</util:list>
java