Spring表達式語言:SpELjava
•Spring 表達式語言(簡稱SpEL):是一個支持運行時查詢和操做對象圖的強大的表達式語言。正則表達式
•語法相似於 EL:SpEL 使用 #{…} 做爲定界符,全部在大框號中的字符都將被認爲是 SpEL測試
•SpEL 爲 bean 的屬性進行動態賦值提供了便利對象
•經過 SpEL 能夠實現:ci
–經過 bean 的 id 對 bean 進行引用it
–調用方法以及引用對象中的屬性class
–計算表達式的值容器
–正則表達式的匹配語法
列子:引用
Person類
private String name;
private Car car;
private String city;
private String info;
Car類
private String carName;
private double zhouchang;
private float shouru;
Address類
private String city;
private String addressName;
IOC容器
<bean id="address" class="com.spel.Address">
<!-- spEl字面量 -->
<property name="city" value="#{'Beijing'}"></property>
<property name="addressName" value="Tiananmen"></property>
</bean>
<bean id="car" class="com.spel.Car">
<property name="carName" value="Audi"></property>
<!-- 引用類的靜態屬性 -->
<property name="zhouchang" value="#{T(java.lang.Math).PI*80}"></property>
<property name="shouru" value="300001"></property>
</bean>
<bean id="person" class="com.spel.Person">
<property name="name" value="Davie"></property>
<property name="car" value="#{car}"></property>
<property name="city" value="#{address.city}"></property>
<property name="info" value="#{car.shouru>300000 ? '土豪' : '雕飾' }"></property>
</bean>
結果就是測試各個bean對象都能打印出相應的結果。