Spring中怎么利用ResourceLoaderAware加载资源

本篇文章为大家展示了Spring中怎么利用ResourceLoaderAware加载资源,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

一 配置文件

<?xml version="1.0" encoding="GBK"?><beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xmlns="http://www.springframework.org/schema/beans"   xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans-4.0.xsd">   <bean id="test" class="org.crazyit.app.service.TestBean"/></beans>

二 Bean

package org.crazyit.app.service;import org.springframework.context.ResourceLoaderAware;import org.springframework.core.io.ResourceLoader;public class TestBean implements ResourceLoaderAware{  private ResourceLoader rd;  // 实现ResourceLoaderAware接口必须实现的方法  // 如果把该Bean部署在Spring容器中,该方法将会由Spring容器负责调用  // Spring容器调用该方法时,Spring会将自身作为参数传给该方法  public void setResourceLoader(ResourceLoader resourceLoader)  {    this.rd = resourceLoader;  }  // 返回ResourceLoader对象的引用  public ResourceLoader getResourceLoader()  {    return rd;  }}

三 测试类

package lee;import org.springframework.context.*;import org.springframework.context.support.*;import org.springframework.core.io.*;import org.dom4j.io.XPPReader;import org.dom4j.Document;import org.dom4j.Element;import java.util.*;import org.crazyit.app.service.*;public class SpringTest{  public static void main(String[] args)  {    // 创建ApplicationContext容器    ApplicationContext ctx = new      ClassPathXmlApplicationContext("beans.xml");    // 获取容器中名为test的Bean实例    TestBean tb = ctx.getBean("test" , TestBean.class);    // 通过tb实例来获取ResourceLoader对象    ResourceLoader rl = tb.getResourceLoader();    // 判断程序获得ResourceLoader和容器是否相同    System.out.println(rl == ctx);  }}

四 测试结果

true

上述内容就是Spring中怎么利用ResourceLoaderAware加载资源,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。