有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

混合表达式和文本的java SpEL模板

如何解析像SpEL表达式这样的“复杂”模板,它混合了文字文本和实际的#{SpEL表达式}?例如:

the dog says #{dog.getSound()}

ApacheCamel在其表达式语言(包括SpEL)中支持这种类似模板的功能,但我还无法找出如何直接使用vanilla SpEL实现这一点


共 (1) 个答案

  1. # 1 楼答案

    user guide中所述,计算TemplateParserContext中的表达式:

    String randomPhrase = 
        parser.parseExpression("random number is #{T(java.lang.Math).random()}", 
                          new TemplateParserContext()).getValue(String.class);
    
    // evaluates to "random number is 0.7038186818312008"