九、Spring 3.0が提供する表現言語(SpEL)

2019 ワード

Expressionインターフェースを使って式を求める:
SpELは主に以下の三つのインターフェースを提供しています.
  • ExpressionPaser:SpEL式を解析し、Expressionオブジェクトを返します.
  • Expression:このインターフェース・インスタンスは1つの式を表す.
  • Everalution Contect:表現は文脈に値する.
  • Expressionの例は、計算のための方法を含み、式の値を得る式を表しています.
  • Object getValue():式の値を計算します.
  • T getValue(Class desireResultType):表式の値を計算し、この表式の値をdesireResultTypeとして処理することを試みる.
  • Object getValue:指定されたEvaletionContect contextを使って式の値を計算します.
  • T getValue(Everaluation Contect context、Class desireResultType):表式の値を計算し、またこの表式の値をdesireResult Typeとして扱うことを試みる.
  • Object getValue: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