SpEl就是Spring Expression Language的简称,功能堪称强大,可以进行表达式求值,具有一些lisp语言的特性。如今简单的列举一些例子。
java
首先,把须要用到的示例类给你们看下
express
public class Person { private String name; private int age; public Person() { this("Tunie", 25); } public Person(String name, int age) { super(); this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
这个类立刻就要用到了。
单元测试
如今,我来演示下如何利用表达式来取得一个Person实例中的name属性。示例代码以下:
测试
//这段代码将在以后的代码中再也不重复出现 ExpressionParser parser = new SpelExpressionParser(); Person person = new Person(); Expression expression2 = parser.parseExpression("getName()"); EvaluationContext context = new StandardEvaluationContext(person); assertEquals("Tunie", expression2.getValue(context));
单元测试经过。在这里咱们先是实例化了一个Person对象,而后实例化一个getName()的表达式及一个拥有Person实例的EvaluationContext实例,最后经过表达式的getValue API取得了Person对象的name属性值。
this
我相信,经过这样一个小小的示例,你们应该会很是快的理解他的用法了。
lua