美文网首页
2018-07-01(6.30-资源访问工具类)

2018-07-01(6.30-资源访问工具类)

作者: acebear | 来源:发表于2018-07-01 18:00 被阅读0次

    jdk所提供的访问资源的类并不能很好的满足各种底层资源的访问需求,因此,Spring设计一个Resource接口,它为应用提供了更强大的访问底层资源的能力:

    主要方法:1.boolean exists():判断资源是否存在    

                       2.boolean isOpen():判断资源是否打开    

                       3.URL getURL():如果底层资源可以表示成URL,该方法返回对应的url对象

                       4.File getFile():如果底层资源对应一个文件,返回对应的file对象

                       5.InputStream getInputStream():返回资源对应的输入流

    具体实现类:1.ByteArrayResource:二进制数组表示的资源

                       2.ClassPathResource:类路径下的资源

                       3.FileSystemresource:文件系统资源

                       4.InputStreamResource:对应一个inputStream资源

                       5.ServletContextresource:主要是为了访问web容器的上下文资源而设计的。

                       6.UrlResource:封装了java.net.url,使得用户能访问所有可以通过url表示的资源。如,文件系统的资源,http的资源等。

    为了访问不同类型的资源,必须使用相应的Resource实现类,这是比较麻烦的。因此Spring提供了一个强大的加载资源的机制,能够通过classpath、file等资源地址前缀自动识别不同的资源类型:

    1、资源类型地址前缀:(1)classpath classpath:com/hp/bean.xml 

                                          (2)file file:/com/hp/bean.xml

                                          (3)http:// http://www.hp.com/bean.xml

                                          (4)ftp ftp://www.hp.com/bean.xml

                                          (5)无前缀 com/hp/bean.xml

    2、ant风格的匹配符:(1)?:匹配文件名中的一个字符 

                                         (2)*:匹配文件名中的任意字符 

                                         (3)**:匹配多层路径。示例:classpath:com/h*.xml    classpath:com/**/test.xml

    spring定义了一套资源加载的接口,并提供了实现类:

    相关文章

      网友评论

          本文标题:2018-07-01(6.30-资源访问工具类)

          本文链接:https://www.haomeiwen.com/subject/epthuftx.html