spring中InitializingBean,DisposableBean,BeanPostProcessor接口例子
2012-04-27 17:14
549 查看
package com.apjept.bean.chapter;
@Service
public class Demo implements InitializingBean,DisposableBean,BeanPostProcessor{
@Override
public void afterPropertiesSet() throws Exception {
System.out.println("*********");
}
@Override
public void destroy() throws Exception {
System.out.println("%%%%%%%%%%%");
}
@Override
public Object postProcessAfterInitialization(Object arg0, String arg1)
throws BeansException {
System.out.println("****22222*****");
return arg0;
}
@Override
public Object postProcessBeforeInitialization(Object arg0, String arg1)
throws BeansException {
System.out.println("*****111****");
return arg0;
}
}
定义AspectJTestBean
package com.apjept.bean.chapter;
@Service
public class AspectJTestBean{
public String MyMethod(String loginInfo) {
System.out.println("Person login() " + "LoginInfo:" + loginInfo + this);
return " logining..."+loginInfo;
}
}
application.xml配置
<context:component-scan base-package="com.apjept.bean.chapter"/>
调用
AbstractApplicationContext ctx = new ClassPathXmlApplicationContext("/applicationContext.xml");
ctx.registerShutdownHook();
ctx.getBean("aspectJTestBean");
@Service
public class Demo implements InitializingBean,DisposableBean,BeanPostProcessor{
@Override
public void afterPropertiesSet() throws Exception {
System.out.println("*********");
}
@Override
public void destroy() throws Exception {
System.out.println("%%%%%%%%%%%");
}
@Override
public Object postProcessAfterInitialization(Object arg0, String arg1)
throws BeansException {
System.out.println("****22222*****");
return arg0;
}
@Override
public Object postProcessBeforeInitialization(Object arg0, String arg1)
throws BeansException {
System.out.println("*****111****");
return arg0;
}
}
定义AspectJTestBean
package com.apjept.bean.chapter;
@Service
public class AspectJTestBean{
public String MyMethod(String loginInfo) {
System.out.println("Person login() " + "LoginInfo:" + loginInfo + this);
return " logining..."+loginInfo;
}
}
application.xml配置
<context:component-scan base-package="com.apjept.bean.chapter"/>
调用
AbstractApplicationContext ctx = new ClassPathXmlApplicationContext("/applicationContext.xml");
ctx.registerShutdownHook();
ctx.getBean("aspectJTestBean");
相关文章推荐
- Spring 的 BeanPostProcessor接口实现
- Spring 的 BeanPostProcessor接口实现
- Spring 回顾 (Spring 扩展之 BeanPostProcessor 接口)
- 【spring源码分析】BeanDefinitionRegistryPostProcessor接口可自定义bean加入IOC
- Spring源码分析之BeanPostProcessor接口和BeanFactoryPostProcessor接口方法不执行原因分析
- Spring BeanPostProcessor接口的使用
- Spring 的 BeanPostProcessor接口实现
- Spring BeanPostProcessor接口使用详解
- 关于Spring的Aware接口和后置处理器接口(BeanPostProcessor和BeanFactoryPostProcessor)的一些想法
- Spring BeanPostProcessor接口 (在Spring实例化bean的前后执行一些附加操作) .
- Spring的BeanFactoryPostProcessor和BeanPostProcessor接口的区别
- Spring 的 BeanPostProcessor接口实现
- Spring 的 BeanPostProcessor接口实现
- Spring 的 BeanPostProcessor接口实现
- Spring 的 BeanPostProcessor接口实现
- spring BeanPostProcessor接口
- Spring源码分析之BeanPostProcessor接口和BeanFactoryPostProcessor接口方法不执行原因分析
- Spring 的 BeanPostProcessor接口实现
- Spring - BeanPostProcessor接口(后处理器)讲解
- Spring 的 BeanPostProcessor接口实现