English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
SpEL It is an extended language that supports the ability to query and manipulate object graphs at runtime.
There are many available expression languages, such as JSP EL, OGNL, MVEL, and JBoss EL. SpEL provides some other features, such as method invocation and string template features.
The SpEL API provides many interfaces and classes. They are as follows:
Expression interface SpelExpression class ExpressionParser interface SpelExpressionParser class EvaluationContext interface StandardEvaluationContext class
import org.springframework.expression.Expression; import org.springframework.expression.ExpressionParser; import org.springframework.expression.spel.standard.SpelExpressionParser; public class Test { public static void main(String[] args) { ExpressionParser parser = new SpelExpressionParser(); Expression exp = parser.parseExpression("'Hello SPEL'"); String message = (String) exp.getValue(); System.out.println(message); //ODER //System.out.println(parser.parseExpression("'Hello SPEL'").getValue()); } }
Let's see many useful SPEL examples. Here, we assume that all examples are written within the main() method.
Use the concat() method in conjunction with String
ExpressionParser parser = new SpelExpressionParser(); Expression exp = parser.parseExpression("'Welcome SPEL'.concat('!')"); String message = (String) exp.getValue(); System.out.println(message);
Expression exp = parser.parseExpression("'Hello World'.bytes"); byte[] bytes = (byte[]) exp.getValue(); for(int i=0;i<bytes.length;i++{ System.out.print(bytes[i]+" "); }
Expression exp = parser.parseExpression("'Hello World'.bytes.length"); int length = (Integer) exp.getValue(); System.out.println(length);
Expression exp = parser.parseExpression("new String('hello world').toUpperCase()"); String message = exp.getValue(String.class); System.out.println(message); //ODER System.out.println(parser.parseExpression("'hello world'.toUpperCase()").getValue());