我有一个使用Spring Boot web的简单webapp
我有一个web.xml文件
src/main/webapp/WEB-INF
包含像这样的上下文参数
<context-param>
<description>Directory containing the configuration files</description>
<param-name>confDir</param-name>
<param-value>/opt/rasdaman/etc/</param-value>
</context-param>
在Servlet Controller中,我可以获得Servlet上下文
@Autowired
private ServletContext servletContext;
但是当我试图获取参数时,它返回null
servletContext.getInitParameter("confDir");
当我试图获得servletContext的真实路径时
servletContext.getRealPath(File.separator);
它返回
"..../src/main/webapp/"
如何在web.xml中获取配置变量?
由于
答案 0 :(得分:1)
我自己没试过,但是。如果你使Controller实现ServletContextAware,我认为你可以从http://docs.spring.io/spring/docs/3.0.x/javadoc-api/org/springframework/web/context/ServletContextAware.html获得你的上下文参数
这个想法将是
public class MyCoolController implements ServletContextAware {
@Override
setServletContext(ServletContext servletContext) {
String confDir = servletContext.getInitParameter("confDir");
}
}
试一试
答案 1 :(得分:0)