对于最新的稳定版本,请使用 Spring Framework 6.2.10spring-doc.cadn.net.cn

文字表达式

SpEL 支持以下类型的文字表达式。spring-doc.cadn.net.cn

字符串可以用单引号 () 或双引号 () 分隔。自 在用单引号括起来的字符串文字中包含单引号 标记,使用两个相邻的单引号字符。同样,要包含双精度 用双引号括起来的字符串文字中的引号,请使用两个 相邻的双引号字符。'"spring-doc.cadn.net.cn

数字支持使用负号、指数表示法和小数点。 默认情况下,实数是通过使用Double.parseDouble().spring-doc.cadn.net.cn

以下列表显示了文字的简单用法。通常,它们不用于 像这样的隔离,而是作为更复杂表达式的一部分——例如, 在逻辑比较运算符的一侧使用文字或作为 方法。spring-doc.cadn.net.cn

ExpressionParser parser = new SpelExpressionParser();

// evaluates to "Hello World"
String helloWorld = (String) parser.parseExpression("'Hello World'").getValue();

// evaluates to "Tony's Pizza"
String pizzaParlor = (String) parser.parseExpression("'Tony''s Pizza'").getValue();

double avogadrosNumber = (Double) parser.parseExpression("6.0221415E+23").getValue();

// evaluates to 2147483647
int maxValue = (Integer) parser.parseExpression("0x7FFFFFFF").getValue();

boolean trueValue = (Boolean) parser.parseExpression("true").getValue();

Object nullValue = parser.parseExpression("null").getValue();
val parser = SpelExpressionParser()

// evaluates to "Hello World"
val helloWorld = parser.parseExpression("'Hello World'").value as String

// evaluates to "Tony's Pizza"
val pizzaParlor = parser.parseExpression("'Tony''s Pizza'").value as String

val avogadrosNumber = parser.parseExpression("6.0221415E+23").value as Double

// evaluates to 2147483647
val maxValue = parser.parseExpression("0x7FFFFFFF").value as Int

val trueValue = parser.parseExpression("true").value as Boolean

val nullValue = parser.parseExpression("null").value