博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring boot: spring Aware的目的是为了让Bean获得Spring容器的服务
阅读量:6247 次
发布时间:2019-06-22

本文共 2089 字,大约阅读时间需要 6 分钟。

Spring Aware的目的是为了让Bean获得Spring容器的服务

 

//获取容器中的bean名称

import org.springframework.beans.factory.BeanNameAware;
//获得资源加载器,可以获得额外的资源
import org.springframework.context.ResourceLoaderAware;

 

package ch2.aware;import java.io.IOException;import org.apache.commons.io.IOUtils;//获取容器中的bean名称import org.springframework.beans.factory.BeanNameAware;//获得资源加载器,可以获得额外的资源import org.springframework.context.ResourceLoaderAware;import org.springframework.core.io.Resource;import org.springframework.core.io.ResourceLoader;import org.springframework.stereotype.Service;//AwareService是spring的一个组件@Service//实现BeanNameAware,ResourceLoaderAware资源的接口,获得名称和资源加载的服务public class AwareService implements BeanNameAware,ResourceLoaderAware {			private String beanName;	private ResourceLoader loader;	//实现ResourceLoaderAware需要重写setResourceLoader	@Override	public void setResourceLoader(ResourceLoader resourceLoader) {		// TODO Auto-generated method stub		this.loader = resourceLoader;			}	//实现BeanNameAware需要重写setBeanName	@Override	public void setBeanName(String name) {		// TODO Auto-generated method stub		this.beanName = name;			}		public void outputResult()	{		System.out.println("bean的名字为:"+ beanName);				Resource resource = loader.getResource("classpath:ch2/aware/test.txt");				try {			System.out.println("ResourceLoader加载的内容为:" + IOUtils.toString(resource.getInputStream()));		} catch (IOException e) {			// TODO Auto-generated catch block			e.printStackTrace();		}	}				}

 配置:

package ch2.aware;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;//声明本类是一个配置类@Configuration//自动加载ch2.aware包下面的内容@ComponentScan("ch2.aware")public class AwareConfig {}

  运行:

package ch2.aware;import org.springframework.context.annotation.AnnotationConfigApplicationContext;public class Main {	public static void main(String[] args)	{				AnnotationConfigApplicationContext context= new AnnotationConfigApplicationContext(AwareConfig.class);		AwareService awareService  = context.getBean(AwareService.class);		awareService.outputResult();		context.close();	}	}

  

 

转载地址:http://taria.baihongyu.com/

你可能感兴趣的文章
mysql REPEATABLE READ对幻读的解决
查看>>
hdu 1856
查看>>
JAVA并发数据结构
查看>>
一个天气App案例(一)
查看>>
超酷的模态框效果 - Nifty
查看>>
新年放大招:Github 私库免费了!
查看>>
centos 6.5安装vncserver 并开启远程桌面
查看>>
Ionic常用animation动画及使用分析
查看>>
在RHEL上配置epel的yum源及其他开源YUM源
查看>>
二进制串反转 Reverse Bits
查看>>
python登陆接口----运维开发初学
查看>>
android访问.net发布的webservcie返回的List
查看>>
程序语言设计的发展
查看>>
PBM博客
查看>>
Linux命令
查看>>
希尔排序
查看>>
如何制作PPT
查看>>
codesmith复制中文乱码解决
查看>>
CSS中的定位
查看>>
tomcat8 部署异常
查看>>