美文网首页
Spring表达式语言:SpEL

Spring表达式语言:SpEL

作者: BlueSkyBlue | 来源:发表于2020-03-18 12:42 被阅读0次

    Spring表达式语言(简称SpEL):是一个支持运行时查询和操作对象的强大的表达式语言。

    语法类似于EL:SpEL使用#{...}作为界定符,所有在大框号中的字符都将被认为是SpEL。

    SpEL为bean的属性进行动态赋值提供了便利。

    通过SpEL可以实现:

    • 通过bean的id对bean进行引用
    • 调用方法以及引用对象中的属性
    • 计算表达式的值
    • 正则表达式的匹配

    SpEL常用示例

    使用SpEL为属性配置一个字面值

    <bean id="address" class="com.spring.spel.Address">
        <property name="city" value="#{'Beijing'}"></property>
    </bean>
    

    使用SpEL引用类的静态属性

    <bean id="car" class="com.spring.spel.Car">
        <property name="brand" value="Audi"></property>
        <property name="corp" value="Shanghai"></property>
        <property name="perimeter" value="#{T(java.lang.Math).PI * 80}"></property>
    </bean>
    

    使用SpEL引用其它的bean以及其中的属性

    <bean id="person" class="com.spring.spel.Person">
        <property name="car" value="#{car}"></property>
        <property name="city" value="#{address.city}"></property>
    </bean>
    

    在SpEL中使用运算符

    <property name="info" value="#{car.price > 300000 ? 'Gold Collar' : 'White Collar'}"></property>
    

    相关文章

      网友评论

          本文标题:Spring表达式语言:SpEL

          本文链接:https://www.haomeiwen.com/subject/oyeqyhtx.html