表示式模板

表示式模板允許將字面文字與一個或多個求值塊混合。每個求值塊都由您可以定義的字首和字尾字元分隔。一個常見的選擇是使用 #{ } 作為分隔符,如下例所示

  • Java

  • Kotlin

String randomPhrase = parser.parseExpression(
		"random number is #{T(java.lang.Math).random()}",
		new TemplateParserContext()).getValue(String.class);

// evaluates to "random number is 0.7038186818312008"
val randomPhrase = parser.parseExpression(
		"random number is #{T(java.lang.Math).random()}",
		TemplateParserContext()).getValue(String::class.java)

// evaluates to "random number is 0.7038186818312008"

該字串透過連線字面文字 'random number is ' 和求值 #{ } 分隔符內表示式(在本例中是呼叫 random() 方法的結果)的結果來求值。parseExpression() 方法的第二個引數是 ParserContext 型別。ParserContext 介面用於影響表示式的解析方式,以支援表示式模板功能。上例中使用的 TemplateParserContext 位於 org.springframework.expression.common 包中,是 ParserContext 的一個實現,它預設將字首和字尾分別配置為 #{}

© . This site is unofficial and not affiliated with VMware.