spring-expression Spel表达式 java语言解析

对表达式进行解析,对于一开始不知道在哪用的方法,通过字符串传入解析器,进行解析。

demo 1

解析"1+2"

public static void main(String[] args) {
        //将一整个语句直接定义了字符串 ,其中对字符串的开始索引与结束索引使用替代变量
        String str = "1 + 2";
        //1定义一个专属的表达式解析工具
        ExpressionParser parser = new SpelExpressionParser() ;
        //2定义一个表达式处理类
        Expression exp = parser.parseExpression(str);
        //3进行最终的表达式计算
        EvaluationContext context = new StandardEvaluationContext() ;
        //4通过表达式进行结果计算
        System.out.println(exp.getValue(context));
    }

输出如下:

3

 

demo2

对方法进行解析

public class C {
	public static void main(String[] args) {
        //new D()为root根对象,context 为上下文
		StandardEvaluationContext context = new StandardEvaluationContext(new D());
        #设置解析器
		ExpressionParser parser=new SpelExpressionParser();
        #上下文设置
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 成长之路 设计师:Amelia_0503 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值