`
raymond.chen
  • 浏览: 1442386 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Spring表达式语言

 
阅读更多

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

 

语法:

       #{...}

 

字面量:

       整数: #{8}

       浮点数: #{8.8}

       字符串: #{'玛莎拉蒂'}

       布尔值: #{true}

 

静态方法调用:

        #{T(java.lang.Math).PI * 75.8f}

 

引用bean、属性、方法:

        #{car}

        #{car.toString()}

        #{car.price > 400000 and age > 30}

        #{car.price > 30000 ? '金领' : '白领'}

        #{address.province + '省' + address.city + '市' + address.area + '区'}

 

支持的运算符号:

        算术运算符:+,-,*,/,%,^

        比较运算符:< , > , == , >= , <= , != ,lt , gt , eg , le , ge ,eq

        逻辑运算符:and , or , not , |

        Elvis 操作符:?:

               #{kenny.song ?: 'Greensleeves'}

        正则表达式:#{admin.email matches '[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}'}

        避免空指针的运算符:  ?.

               #{songSelector.selectSong()?.toUpperCase()}

 

分享到:
评论
Global site tag (gtag.js) - Google Analytics