Spring 加载Resource

Spring 资源加载提供了一个非常通用的方法getResource(),用于从文件系统,类路径,URL等位置获取资源(文本文件,媒体文件,图像文件...)。可以从Spring上下文中获取getResource()方法。

1. 文件系统
Resource resource = appContext.getResource("file:c:\\testing.txt");
2. URL路径
Resource resource = appContext.getResource("url:http://www.yourdomain.com/testing.txt");
3. 类路径
Resource resource = appContext.getResource("classpath:test/testing.txt");

你只需指定资源的位置,Spring将处理并返回一个Resource

Bean资源加载器

由于bean没能访问应用程序上下文的访问权限,所以需要实现ResourceLoaderAware来保存一个ResourceLoader实例来加载Resource

@Service
public class CustomerService implements ResourceLoaderAware
{
	private ResourceLoader resourceLoader;
	
	public void setResourceLoader(ResourceLoader resourceLoader) {
		this.resourceLoader = resourceLoader;
	}
		
	public Resource getResource(String location){
		return resourceLoader.getResource(location);
	}
}

这样通过CustomerService保持了一个ResourceLoader的实例,通过ResourceLoader提供的getReource()方法来加载Resource。

结论

如果没有这个 getResource() 方法,您将需要使用不同的解决方案来处理不同的资源,例如文件系统资源的File对象,URL资源的URL对象。Spring真的用这个超级通用的 getResource() 方法做得很好,它确实节省了我们处理资源的时间。

转载于:https://my.oschina.net/u/183476/blog/3035904

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值