首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从Spring @Configuration类获得WEB资源?

如何从Spring @Configuration类获得WEB资源?
EN

Stack Overflow用户
提问于 2014-09-19 14:32:11
回答 1查看 2.7K关注 0票数 0

WEB-INF创建@Bean目录下的Spring@Configuration类中,我试图加载特定的资源。

如我所知,@ImportResource仅用于Spring配置,而不是用于其他文件。使用ClassLoader的方法不起作用,并且总是返回null

例如:

代码语言:javascript
运行
复制
    @Bean
    public aBean someBean() {
        final URL someFolderDirUrl = WebConfig.class.getClassLoader().getResource("WEB-INF/someFolder");
        final URL someFolderDirUrl2 = WebConfig.class.getClassLoader().getResource("/someFolder");
        final URL someFolderDirUrl3 = WebConfig.class.getClassLoader().getResource("/WEB-INF/someFolder");
        final URL someFolderDirUrl4 = WebConfig.class.getClassLoader().getResource("someFolder");

        // final URI someFolderDirUri = new URI("file:/WEB-INF/someFolder");

        if(modulesDirUrl != null) {
            File someFolderDirFile;
            try {
                someFolderDirFile = new File(someFolderDirUrl.toURI());
            } catch(final URISyntaxException e) {
                someFolderDirFile = new File(someFolderDirUrl.getPath());
            }

            return new aBean(someFolderDirFile);
        }

        return new aBean();
    }

最后,所有someFolderDirUrlX变量都是nullsomeFolderDirUri的情况相同。

是否可以在Spring的File类中获取指向WEB-INF中的文件或目录的@Configuration对象

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-19 14:42:26

您可以从ServletContext访问它:

代码语言:javascript
运行
复制
@Autowired
ServletContext servletContext;

@Bean
public aBean someBean() {
     File someFolderDirUrl = new File( servletContext.getRealPath("/WEB-INF/") );
     ....
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25936352

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档