Spring中的Resources

Resources:

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

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

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

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

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

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

ResourceLoader:

ResourceLoader是对resource加载的一个类,在spring的Ioc容器里所有的application context都实现了ResourceLoader这个接口,所有的application context都可以获取resource的实例.

public interface ResourceLoader {
    Resoure getResource(String Iocation);
}

传入参数类型:

classpath:从classpath中去加载.例:classpath:com/myapp/config.xml

file:加载一个URL,从文件系统中去加载.例:file:/data/config.xml

http:加载一个URL.例:http://myserver/logo.png

(none):直接输入一个路径,它是依赖于ApplicationContext的ApplicationContext是依赖于classpath创建的.例:/data/config.xml

例:已有一个叫config.xml的文件

public class MoocResource implements ApplicationContextAware {
    private ApplicationContext application;

    @Override
    public void setApplicationContext(AppicationContext applicationContext) throws BeansException {
        this.application = application;
    }

    public void resource() {
        Resource resource = applicationContext.getResource("classpath:config.xml");
    }
}
时间: 2024-07-29 14:51:49

Spring中的Resources的相关文章

spring中集成shiro进行安全管理

shiro是一款轻量级的安全框架,提供认证.授权.加密和会话管理四个基础功能,除此之外也提供了很好的系统集成方案. 下面将它集成到之前的demo中,在之前spring中使用aop配置事务这篇所附代码的基础上进行集成 一.添加jar包引用 修改pom.xml文件,加入: <!-- security --> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core&

Spring中资源的加载ResourceLoader

Spring中资源的加载是定义在ResourceLoader接口中的,它跟前面提到的抽象资源的关系如下: ResourceLoader的源码 [java] view plain copy public interface ResourceLoader { /** Pseudo URL prefix for loading from the class path: "classpath:" */ String CLASSPATH_URL_PREFIX = ResourceUtils.CL

spring中解析xml

解析xml有SAX,Stax,dom等方式,那么spring中是如何解析xml文件的呢? Document doc = this.documentLoader.loadDocument( inputSource, getEntityResolver(), this.errorHandler, validationMode, isNamespaceAware()); spring中采用的DOM的方式,所要做的一切就是得到org.w3c.dom.Document对象 上面的documentLoade

spring中MessageSource的配置使用方法3--ResourceBundleMessageSource【转】

本文转载仅供自己学习收录,不做任何商业用途,如有需要请访问原地址:http://blog.csdn.net/qyf_5445/article/details/8124431 ApplicationContext接口扩展了MessageSource接口,因而提供了消息处理的功能(i18n或者国际化).与HierarchicalMessageSource一起使用,它还能够处理嵌套的消息,这些是spring提供的处理消息的基本接口.让我们快速浏览一下它所定义的方法: String getMessage

spring中classpath和classpath*的配置区别

转自:http://www.micmiu.com/j2ee/spring/spring-classpath-start/ —————————————————————————————————————————— 在使用spring时,经常会看到类似 classpth:.classpath*: 这样的前缀,不管是加载spring xml配置文件还是其配置文件中加载资源文件都会看到这两种前缀配置,其实这两种前缀是有区别的,下面将举例详细解释. [一].测试项目准备 我们以spring中加载propert

spring中MessageSource的配置使用方法3--ResourceBundleMessageSource

ApplicationContext接口扩展了MessageSource接口,因而提供了消息处理的功能(i18n或者国际化).与HierarchicalMessageSource一起使用,它还能够处理嵌套的消息,这些是Spring提供的处理消息的基本接口.让我们快速浏览一下它所定义的方法: String getMessage(String code, Object[] args, String default, Locale loc):用来从MessageSource获取消息的基本方法.如果在指

Spring中property-placeholder的使用与解析

Spring中property-placeholder的使用与解析 我们在基于spring开发应用的时候,一般都会将数据库的配置放置在properties文件中. 代码分析的时候,涉及的知识点概要: NamespaceHandler 解析xml配置文件中的自定义命名空间 ContextNamespaceHandler 上下文相关的解析器,这边定义了具体如何解析property-placeholder的解析器 BeanDefinitionParser 解析bean definition的接口 Be

Spring 中无处不在的 Properties

转自:https://javadoop.com/post/spring-properties?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io Spring 中无处不在的 Properties 更新时间:2018-01-03 对 Spring 里面的 Properties 不理解的开发者可能会觉得有点乱,主要是因为配置方式很多种,使用方式也很多种. 本文不是原理分析.源码分析文章,只是希望可以帮助读者更好地理解和使用 S

Spring(二) Spring中的AOP和属性注入

一.AOP(Aspect Oriented Programing)面向切面编程 AOP的终极目标:让我们可以专心做事 下面通过一个例子来介绍AOP的具体使用 案例的要求:使用AOP实现日志记录系统 ,  核心模块  和    增强  单独  开发  ,运行时再组装 首先定义接口和方法 接口和实现类中的代码,我放在一起了,应该比较简单 package demo04.dao; /** * Created by mycom on 2018/3/5. */ public interface IHello