| 
         此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Framework 6.1.10!  | 
    
| 
         此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Framework 6.1.10!  | 
    
Spring 表达式语言(简称“SpEL”)是一种强大的表达式语言,它 支持在运行时查询和操作对象图。语言语法是 与Jakarta Expression相似 语言,但提供了其他功能,最显着的是方法调用和基本字符串 模板功能。
虽然还有其他几种可用的 Java 表达式语言——OGNL、MVEL 和 JBoss EL,仅举几例——Spring 表达式语言的创建是为了提供 Spring 社区,具有单一的良好支持的表达式语言,可以在所有 Spring 产品组合中的产品。它的语言功能由 Spring 项目组合中项目的要求,包括工具要求 在 Spring Tools for Eclipse 中提供代码完成支持。 也就是说,SpEL 基于与技术无关的 API,它允许其他表达语言 如果需要,可以集成实现。
而 SpEL 是 Spring 中表达评估的基础 portfolio,它与 Spring 没有直接绑定,可以独立使用。自 是自包含的,本章中的许多示例都使用 SpEL,就好像它是 独立表达语言。这需要创建一些引导程序 基础结构类,例如解析器。大多数 Spring 用户不需要处理 此基础结构,可以仅创作用于计算的表达式字符串。 这种典型用途的一个示例是将 SpEL 集成到创建 XML 或 基于注释的 Bean 定义,如用于定义 Bean 定义的 Expression 支持中所示。
本章介绍表达式语言、其 API 及其语言的功能
语法。在几个地方,类被用作目标
表达式求值的对象。这些类声明和用于
填充它们列在本章末尾。InventorSociety
表达式语言支持以下功能:
- 
文字表达式
 - 
访问属性、数组、列表和映射
 - 
内联列表
 - 
内联地图
 - 
阵列结构
 - 
关系运算符
 - 
正则表达式
 - 
逻辑运算符
 - 
字符串运算符
 - 
数学运算符
 - 
分配
 - 
类型表达式
 - 
方法调用
 - 
构造函数调用
 - 
变量
 - 
用户定义的函数
 - 
Bean 引用
 - 
三元、猫王和安全导航运营商
 - 
集合投影
 - 
收藏选择
 - 
模板化表达式