English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
SpEL C'est un langage étendu qui supporte les fonctionnalités de recherche et d'opération sur le graphique d'objets au moment de l'exécution.
Il y a de nombreux langages d'expression disponibles, tels que JSP EL, OGNL, MVEL et JBoss EL. SpEL fournit également certaines autres fonctionnalités, telles que les appels de méthodes et les fonctionnalités de modèle de chaîne.
L'API SpEL fournit de nombreux interfaces et classes. Ils sont les suivants:
Interface Expression Classe SpelExpression Interface ExpressionParser Classe SpelExpressionParser Interface EvaluationContext Classe StandardEvaluationContext
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); //OU //System.out.println(parser.parseExpression("'Hello SPEL'").getValue()); } }
Voyons de nombreux exemples utiles de SPEL. Ici, nous supposons que tous les exemples sont écrits à l'intérieur de la méthode main().
Utiliser la méthode concat() avec 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); //OU System.out.println(parser.parseExpression("'hello world'.toUpperCase()").getValue());