美文网首页Spring专题学习
9.Spring表达式语言

9.Spring表达式语言

作者: Lee_java | 来源:发表于2018-09-08 11:55 被阅读0次

    首先说一下Spring提供了在运行时求值的两种方式:
    (1)属性占位符
    (2)spring表达式语言


    属性占位符
    Spring一直支持将属性定义到外部的属性文件中,并使用占位符值将其插入到Spring Bean中,在spring装配中,占位符的形式为:
    (1){属性名称}的形式。 (2)使用@Value注解:@Value("{属性名称}")

    @Value注解
    如果要在XML进行配置的话,需要使用如下的方法:
    <context:property-placeholder/>

    1.Spring表达式语言有很多特性,例如:
    (1).使用bean的id来引用bean;
    (2).调用方法和访问对象的属性;
    (3).对值进行算术,关系和逻辑运算;
    (4).正则表达式匹配;
    (5).集合操作
    2.Spring表达式的形式:#{表达式主体}
    3.spring表达式例子:
    (1)字面值的表示:
    a.#{数值},整数,浮点数和科学计数法形式的数值
    b.#{String},String类型的值
    c.#{true},Boolean的值
    (2)引用bean,属性和方法
    使用方法:#{bean的id.属性或者方法},如果还要调用方法返回值的其他方法需要判断是否为null,否则会报空指针异常,为了避免空指针异常,我们可以使用类型安全运算符#{bean的id.method?method2},它的含义是调用method的值不为null的情况下,才会调用method2,如果为null的情况下,表达式计算终止,返回null。
    (3)使用类型T()运算符,它可以访问目标类型的静态方法和常量。
    (4)spring表达式运算符


    spring表达式运算符

    (5)计算正则表达式
    在spring表达式中用matches运算符来进行模式匹配,左边是字符串,右侧是正则表达式
    (6)计算集合
    []运算符用来从集合或者数组中按照索引来获取元素。下标也是从0开始的。
    (7)查询运算符.?[]
    用来对集合进行过滤,得到集合的一个字集。
    (8).^[]用来在集合中查找第一个匹配项。
    (9).$[]用来在集合中查找最后一个匹配项。
    (10)投影运算符.![]会从集合的每个成员中选择特定的属性放到另外一个集合中。

    相关文章

      网友评论

        本文标题:9.Spring表达式语言

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