Spring Resource

大纲,本篇主要介绍Spring Resource相关

一:Resource相关

二:ResourceLoader相关

三:Resource ant加载模式相关

 

一:Resource相关

    首先看下Resource有哪些常用的方法:

    



 
 

    看下Resource的类图:


扫描二维码关注公众号,回复: 332184 查看本文章

 

从上面的类图中我们介绍下常用的一些类

UrlResource:

     访问网络资源的实现类。以下面几种开头http: ftp:  file:如:http://myserver/logo.png

ClassPathResource:

     访问类加载路径里资源的实现类。效果类似于this.getClass().getResource("/").getPath();

FileSystemResource:

     访问文件系统里资源的实现类。如:file:/data/config.xml

ServletContextResource:

     访问相对于 ServletContext 路径里的资源的实现类,path必须以“/”开头,如:/WEB-INF/web.xml

     效果类似于request.getServletContext().getRealPath("");

InputStreamResource:

      访问输入流资源的实现类。

ByteArrayResource:

      访问字节数组资源的实现类。

 

二:ResourceLoader相关

ResourceLoader中含有一个Resource对象,所以它的主要功能是getResource()功能。


    可以看到ResourcePatternResolver 在ResourceLoader上封装了一层,支持多资源加载,更值得一说的是它还支持Ant格式的路径。

 


 
 

 ResourcePatternResolver 的实现类:

     

三:Resource ant加载模式相关

    Ant路径通配符支持“?”、“*”、“**”,注意通配符匹配不包括目录分隔符“/”: 

    “?”:匹配一个字符,如“config?.xml”将匹配“config1.xml”;

    “*”:匹配零个或多个字符串,如“cn/*/config.xml”将匹配“cn/javass/config.xml”,但不匹配匹配“cn/config.xml”;而“cn/config-*.xml”将匹配“cn/config-dao.xml”;

     “**”:匹配路径中的零个或多个目录,如“cn/**/config.xml”将匹配“cn /config.xml”,也匹配“cn/javass/spring/config.xml”;而“cn/javass/config-**.xml”将匹配“cn/javass/config-dao.xml”,即把“**”当做两个“*”处理。

    “classpath*:”用于加载所有匹配的类路径Resource

 

 

 

 

猜你喜欢

转载自labreeze.iteye.com/blog/2283666
今日推荐