SpEL简介
SpEL概述
Spring表达式语言全称为“Spring Expression Language”,缩写为“SpEL”,类似于Struts2x中使用的OGNL表达式语言,能在运行时构建复杂表达式、存取对象图属性、对象方法调用等等,并且能与Spring功能完美整合,如能用来配置Bean定义。
表达式语言给静态Java语言增加了动态功能。
SpEL是单独模块,只依赖于spring-core模块,不依赖于其他模块,可以单独使用。
SpEl能干什么?
表达式语言一般是用最简单的形式完成最主要的工作,减少我们的工作量。
SpEL支持如下表达式:
- 基本表达式: 字面量表达式、关系,逻辑与算数运算表达式、字符串连接及截取表达式、三目运算及Elvis表达式、正则表达式、括号优先级表达式;
- 类相关表达式: 类类型表达式、类实例化、instanceof表达式、变量定义及引用、赋值表达式、自定义函数、对象属性存取及安全导航表达式、对象方法调用、Bean引用;
- 集合相关表达式: 内联List、内联数组、集合,字典访问、列表,字典,数组修改、集合投影、集合选择;不支持多维内联数组初始化;不支持内联字典定义;
- 其他表达式:模板表达式。
::: waring 注意 SpEL表达式中的关键字是不区分大小写的。 :::