標籤:相關 tor context 運算式 div argument result ssi birt
簡介
Spring Expression Language(Spring運算式語言),用來解析java語言中的相關並獲得反饋。
下面就摘錄官方樣本來簡單描述一下。也作一下標記,方便以後查閱。
樣本樣本1
1 ExpressionParser parser = new SpelExpressionParser();2 Expression exp = parser.parseExpression("‘Hello World‘");3 String message = (String) exp.getValue();
變數message的值為:Hello World
樣本2
1 ExpressionParser parser = new SpelExpressionParser();2 Expression exp = parser.parseExpression("‘Hello World‘.concat(‘!‘)");3 String message = (String) exp.getValue();
變數message的值為:Hello World!
樣本3
1 ExpressionParser parser = new SpelExpressionParser();2 3 // invokes ‘getBytes()‘4 Expression exp = parser.parseExpression("‘Hello World‘.bytes");5 byte[] bytes = (byte[]) exp.getValue();樣本4
1 ExpressionParser parser = new SpelExpressionParser();2 3 // invokes ‘getBytes().length‘4 Expression exp = parser.parseExpression("‘Hello World‘.bytes.length");5 int length = (Integer) exp.getValue();樣本5
1 ExpressionParser parser = new SpelExpressionParser();2 Expression exp = parser.parseExpression("new String(‘hello world‘).toUpperCase()");3 String message = exp.getValue(String.class);樣本6
1 // Create and set a calendar 2 GregorianCalendar c = new GregorianCalendar(); 3 c.set(1856, 7, 9); 4 5 // The constructor arguments are name, birthday, and nationality. 6 Inventor tesla = new Inventor("Nikola Tesla", c.getTime(), "Serbian"); 7 8 ExpressionParser parser = new SpelExpressionParser(); 9 Expression exp = parser.parseExpression("name");10 11 EvaluationContext context = new StandardEvaluationContext(tesla);12 String name = (String) exp.getValue(context);
擷取對象tesla的屬性name的值。
樣本7
1 / Create and set a calendar 2 GregorianCalendar c = new GregorianCalendar(); 3 c.set(1856, 7, 9); 4 5 // The constructor arguments are name, birthday, and nationality. 6 Inventor tesla = new Inventor("Nikola Tesla", c.getTime(), "Serbian"); 7 8 ExpressionParser parser = new SpelExpressionParser(); 9 Expression exp = parser.parseExpression("name == ‘Nikola Tesla‘");10 boolean result = exp.getValue(context, Boolean.class); // evaluates to true
變數result為判斷對象tesla的屬性name是否和字串‘Nikola Tesla‘相同。
Spring文檔苦讀【7】【Spring Expression Language(SpEL)】