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

时间:2016-05-19 07:14:57

标签: jsp spring-mvc spring-boot jstl spring-el

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

application.properties条目:

frontend.url=http://example.com/some_endpoint

在我的JSP文件中 我在下面尝试了这些变化。

<spring:eval  expression="('frontend.url')" />
<spring:eval  expression="'frontend.url'" />

以下抛出错误

<spring:eval  expression="@getProperty('frontend.url')" />
<spring:eval  expression="@frontend.url" />
<spring:eval  expression="@applicationProperties.getProperty('frontend.url')" />

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

@Value("${frontend.url}")
private String urlForDisplayPurposes;

我知道这里解释的建议方法enter link description here 但我确实不想要额外的属性文件。

2 个答案:

答案 0 :(得分:7)

使用@environment.getProperty()应该有效。例如:

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

答案 1 :(得分:0)

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<spring:eval expression="@environment.getProperty('myvar')" var="frontendUrl" />

你可以在jsp中使用“frontendUrl”