Spring专题学习

9.Spring表达式语言

2018-09-08  本文已影响0人  Lee_java

首先说一下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)投影运算符.![]会从集合的每个成员中选择特定的属性放到另外一个集合中。

上一篇下一篇

猜你喜欢

热点阅读