Spring SpEL – Relational Operators


Spring SpEL – Relational Operators



”;


SpEL expression supports relational operators like <, >, equals etc. It also support instance of and matches operators.

Following example shows the various use cases.

Example

Let”s update the project created in Spring SpEL – Create Project chapter. We”re adding/updating following files −

  • MainApp.java − Main application to run and test.

Here is the content of MainApp.java file −


package com.tutorialspoint;

import java.text.ParseException;
import java.util.HashMap;
import java.util.Map;
import org.springframework.expression.EvaluationContext;
import org.springframework.expression.ExpressionParser;
import org.springframework.expression.spel.standard.SpelExpressionParser;
import org.springframework.expression.spel.support.StandardEvaluationContext;

public class MainApp {
   public static void main(String[] args) throws ParseException {
      ExpressionParser parser = new SpelExpressionParser();

      // evaluates to true
      boolean result = parser.parseExpression("2 == 2").getValue(Boolean.class);
      System.out.println(result);

      // evaluates to false
      result = parser.parseExpression("2 < -5.0").getValue(Boolean.class);
      System.out.println(result);

      // evaluates to true
      result = parser.parseExpression("''black'' < ''block''").getValue(Boolean.class);
      System.out.println(result);

      // evaluates to false
      result = parser.parseExpression("''xyz'' instanceof T(int)").getValue(Boolean.class);
      System.out.println(result);

      // evaluates to false
      result = parser.parseExpression("''5.0067'' matches ''^-?\d+(\.\d{2})?$''").getValue(Boolean.class);
      System.out.println(result);
   }
}

Output


true
false
true
false
false

Advertisements

”;

Leave a Reply

Your email address will not be published. Required fields are marked *