Spring4 学习系列之——SpEl表达式的使用

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对象都能打印出相应的结果。

相关文章
相关标签/搜索