在Thymeleaf模板中,如何获取系统环境变量的值?
我想也许${@environment.getProperty('VariableName', 'DefaultVariableValue')}
可行......但是;它似乎始终返回DefaultVariableValue
,即使在环境中定义了VariableName
。
答案 0 :(得分:0)
你在使用Spring吗?您可以从控制器中提取属性,将其插入到模型中,然后从Thymeleaf模板中引用模型值。或者,如果您不使用spring,请使用System.getProperty("variableName")
获取系统属性。请参阅我的500页面中需要变量的示例。
@Controller
public class Error {
@Value("${variableName}")
private String variableName;
@RequestMapping("/500")
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
public ModelAndView internalServerError() {
ModelAndView mav = new ModelAndView("error");
mav.addObject("variableName", variableName);
return mav;
}
}
在模板中:
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<title>Nitro Error</title>
<base th:href="${baseUrl}"/>
</head>
...
</html>