Spring 使用表达式语言获取值的步骤

Spring 使用表达式语言获取值的步骤,spring,spring-expression-language,spring-expression,Spring,Spring Expression Language,Spring Expression,我的表达式是:#age*10,我给age赋值为15.6 结果是156.0事实上,我想要得到的最终结果是:156 我可以在代码中这样做,但是如何通过修改表达式来实现呢 谢谢您需要使用Integer.class,如下所示: import org.springframework.expression.Expression; import org.springframework.expression.ExpressionParser; import org.springframework.express

我的表达式是:
#age*10
,我给age赋值为15.6 结果是
156.0
事实上,我想要得到的最终结果是:
156

我可以在代码中这样做,但是如何通过修改表达式来实现呢


谢谢

您需要使用
Integer.class
,如下所示:

import org.springframework.expression.Expression;
import org.springframework.expression.ExpressionParser;
import org.springframework.expression.spel.standard.SpelExpressionParser;
import org.springframework.expression.spel.support.StandardEvaluationContext;

public class Demo {
    public static void main(String[] args) {
        ExpressionParser parser = new SpelExpressionParser();
        StandardEvaluationContext context = new StandardEvaluationContext();
        Double age = 15.6;
        context.setVariable("age", age);
        Expression exp = parser.parseExpression("#age*10");
        int result = exp.getValue(context, Integer.class);
        System.out.println(result);
    }
}
输出:

156

可能这与:您刚才在标记中提到了
expression
,但不清楚它是
JSTL
还是
SpEL
或其他内容。正确地标记它以获得正确的关注。它应该是SPEL Expression谢谢。我将使用此方法调整数据