【问题标题】:Load file from WEB-INF folder using Spring使用 Spring 从 WEB-INF 文件夹加载文件
【发布时间】:2011-12-12 17:16:16
【问题描述】:

我正在尝试使用 Spring 加载应用程序的 WEB-INF 文件夹下的配置文件。

我尝试过使用

private @Autowired ServletContext servletContext;

然后

servletContext.getResourceAsStream("/WEB-INF/" + fileNm);

但是 servletContext 被返回为 null。

我做错了什么?

我的方法看起来像这样

public static SqlSessionFactory getSqlSessionFactory() {
  SqlSessionFactory  sqlSessionFactory = new SqlSessionFactoryBuilder().build(myConnObj.getIpStream("mybatis-config.xml"));
}

private InputStream getIpStream(String fileNm){
    InputStream inputStream = null;
    try{
        inputStream = servletContext.getResourceAsStream("/WEB-INF/" + fileNm);
    } catch(Exception ex) {
        ex.printStackTrace();
    }
    return inputStream;
}

【问题讨论】:

  • 包含ServletContext 对象的类是Spring 托管的bean 吗?意思是,它有@Component(或@Controller@Service等)注解吗?
  • 是的,我已经给它添加了@Controller注解

标签: java spring spring-mvc


【解决方案1】:

如果你尝试在你的类中实现ServletContextAware 会使其覆盖:

@Override
    public void setServletContext(ServletContext servletContext) {
        this.servletContext=servletContext;
    }

哪个会给你servletContext?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-18
    • 1970-01-01
    • 2019-02-26
    • 1970-01-01
    • 2014-12-07
    相关资源
    最近更新 更多