SpringBoot应用程序:访问JSP页面中的公共应用程序属性

Gil*_*lva 6 jsp jstl spring-mvc spring-el spring-boot

我正在尝试访问JSP页面中的application.properties中的属性集.这是出于显示目的,将用户从我们的管理页面发送到不同的应用程序.在代码中根本不需要它.

application.properties条目:

frontend.url=http://example.com/some_endpoint
Run Code Online (Sandbox Code Playgroud)

在我的JSP文件中,我尝试过以下这些变体.

<spring:eval  expression="('frontend.url')" />
<spring:eval  expression="'frontend.url'" />
Run Code Online (Sandbox Code Playgroud)

以下这些抛出错误

<spring:eval  expression="@getProperty('frontend.url')" />
<spring:eval  expression="@frontend.url" />
<spring:eval  expression="@applicationProperties.getProperty('frontend.url')" />
Run Code Online (Sandbox Code Playgroud)

是否有特定的语法要使用,还是应该只从控制器公开请求属性?

@Value("${frontend.url}")
private String urlForDisplayPurposes;
Run Code Online (Sandbox Code Playgroud)

我知道这里解释的建议方法输入链接描述在这里 工作,但我真的不想要一个额外的属性文件.

g00*_*00b 11

使用@environment.getProperty()应该工作.例如:

<spring:eval expression="@environment.getProperty('frontend.url')" var="frontendUrl" />
<a href="${frontendUrl}">Click</a>
Run Code Online (Sandbox Code Playgroud)