一尘不染

Spring EL变量列表?

spring-mvc

Spring EL支持一些预定义的变量

  • {#systemProperties. ... }
  • {#systemEnvironment. ... }
  • {#request. ...}
  • {#session. ...}

前两个曾经在Spring
Reference:第6章中
有记录。Spring
Expression
Language(SpEL)
。Spring
Reference中未提及其他两个(或我没有找到它们。)(我在此幻灯片中找到了它们,以及在Spring
social
和此问题中的用法)。

所以我的问题是:预定义的spring-el变量是否或多或少完整?

我猜想其中一些预定义的变量不是由spring核心本身定义的,而是由诸如spring-mvc之类的某些模块“激活”的。因此,我对
或多或少常见的spring + jpa + mvc + security应用程序中可用 的变量感兴趣。


阅读 407

收藏
2020-06-01

共1个答案

一尘不染

我无法回答您的根本问题,但可以给您一个提示。

在您的应用程序上下文启动时注册了一些预定义的Bean,但这取决于您使用的上下文类型。

通常,systemProperties并且systemEnvironment存在。在Web应用程序中加载弹簧,你也将获得servletContextcontextParameterscontextAttributes。我假设,request并且session也与Web应用程序上下文有关。

我在调试使用Spring
3.0.6RELEASE的应用程序时发现了这一点。一个很好的起点是SpringBeanELResolver.getValue()方法。

2020-06-01