首页 > 学院 > 开发设计 > 正文

spring拓展

2019-11-08 03:23:44
字体:
来源:转载
供稿:网友

SPRing主要提供了两类扩展点BeanPostProcessor和BeanFactoryPostProcessor。前者是操作bean的实例,后者使对bean的元数据定义进行扩展。

BeanPostProcessor

接口说明

BeanPostProcessor提供对bean实例的操作扩展,在spring容器对bean实例化和设置依赖之后,其回调开始执行。BeanPostProcessor接口定义的两个方法,分别在bean的初始化方法(InitializingBean接口,或者init-method定义)执行的前后执行:

[java] view plain copy 在CODE上查看代码片派生到我的代码片public interface BeanPostProcessor{        /**        * 在bean的初始化方法执行后执行        */        public Object postProcessAfterInitialization(Object arg0, String arg1)              throws BeansException ;        /**        * 在bean的初始化方法执行前执行        */        public Object postProcessBeforeInitialization(Object arg0, String arg1)              throws BeansException ;               }  

在这里先来示范下实现此接口

import org.springframework.beans.BeansException;import org.springframework.beans.factory.config.BeanPostProcessor;public class MyCustomProxy implements  BeanPostProcessor {	@Override	public Object postProcessBeforeInitialization(Object bean, String beanName)			throws BeansException {		System.out.println("----------");		System.out.println(beanName+":"+bean);		return bean;	}	@Override	public Object postProcessAfterInitialization(Object bean, String beanName)			throws BeansException {		System.out.println("++++++++++++++++");		System.out.println(beanName+":"+bean);		return bean;	}}

在springmvc里面增加配置bean

<bean class="com.test.MyCustomPostProcessor"/>  

运行就会发现,会打印相关的日志.


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表