九、Spring 3.0 提供的表达式语言(SpEL)

使用Expression接口进行表达式求值:

SpEL主要提供如下三个接口:

  • ExpressionParser:该接口负责解析一个SpEL表达式,返回一个Expression对象。
  • Expression:该接口实例代表一个表达式。
  • EvalutionContext:代表计算表达式值得上下文。

Expression实例代表一个表达式,它包含了如下方法用于计算,得到表达式的值:

  • Object getValue():计算表达式的值。
  • T getValue(Class desireResultType):计算表达式的值,而且尝试将该表达式的值当成desireResultType类型来处理。
  • Object getValue(EvaluationContext context):使用指定的EvaluationContext来计算表达式的值。
  • T getValue(EvaluationContext context,Class desireResultType):计算表达式的值,而且尝试将该表达式的值当成desireResultType类型来处理。
  • Object getValue(Object rootObject):以rootObject作为表达式的root对象来计算表达式的值。
  • T getValue(Object rootObject,Class desireResultType):以rootObject作为表达式的root对象来计算表达式的值。而且尝试将该表达式的值当成desireResultType类型来处理。

Bean定义中的表达式语言支持:

Author.java

public class Author implements Persion
{
    private Integer id;
    private String name;
    private List books;
    .......省略所有的setter和getter方法.......

    public void useAxe(){
    System.out.println(axe.chop());
    }
}

beans.xml




        
        
    
     
     

你可能感兴趣的:(九、Spring 3.0 提供的表达式语言(SpEL))