学习记录

来源:互联网 发布:mac系统怎么安装ps 编辑:程序博客网 时间:2024/05/21 16:58

针对于资源文件的统一接口

Resource

UrlResource:URL对应的资源,根据一个URL地址即可构建

ClassPathResource:获取类路径下的资源文件

FileSystemResource:获取文件系统里面的资源

ServletContextResource:ServletContext封装的资源,用于访问ServletContext下的资源

InputStreamResource:针对于输入流封装的资源

ByteArrayResource:针对于字节数组封装的资源


ResourceLoader:

所有ApplicationContext都实现了ResourceLoader接口 可以调用getResource来获得Resource。


常实现ApplicationContextAware接口来覆盖setApplicationContext然后获取applicationContext

如下面:

public class MoocResource implements ApplicationContextAware  {private ApplicationContext applicationContext;@Overridepublic void setApplicationContext(ApplicationContext applicationContext)throws BeansException {this.applicationContext = applicationContext;}public void resource() throws IOException {Resource resource = applicationContext.getResource("config.txt");System.out.println(resource.getFilename());System.out.println(resource.contentLength());}}

常用调用方法有如下几种:

classpath: context.getResource("classpath:com/myapp/config.txt)需要在java build path下配置

file: context.getResource("file:C:\\data\\config.txt")文件的路径

http:context.getResource("url:http://write.blog.csdn.net/postedit")

(none):context.getResource("config.txt") 由上下文决定即ApplicationContext决定

0 0