首页 > 编程语言 > 详细

SpringIOC容器-xml配置bean-bean的生命周期及后置处理器 BeanPostProcess

时间:2020-04-18 17:46:53      阅读:63      评论:0      收藏:0      [点我收藏+]

一、实验使用实体类

技术分享图片

Car中有init方法和destory方法

Bean可以指定自己的初始化方法和销毁方法,在xml的bean标签中显示如下

(这里的方法名可以可以随便定义,不一定要是init和destroy,标签的属性名对就行了)

<bean id="car" class="com.llf.bean.Car" init-method="init" destroy-method="destroy">
    <property name="brand" value="长安"></property>
    <property name="speed" value="300"></property>
    <property name="price" value="100000"></property>
</bean>

在java代码中配置Bean的后置处理器,用于管理Bean的生命周期

 这里是Java的后置处理器代码

package com.llf.bean.postprocess;

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.BeanPostProcessor;

/**
 * @author linglongfang
 */
public class MyBeanPostProcess implements BeanPostProcessor {

    @Override
    public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
        System.out.println("postProcessBeforeInitialization"+beanName);
        return bean;
    }

    @Override
    public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
        System.out.println("postProcessAfterInitialization"+beanName);
        return bean;
    }
}

 

这里是xml文件的配置:bean的后置处理器,不需要id属性值,因为并不需要的实体bean

<bean id="car" class="com.llf.bean.Car" init-method="init" destroy-method="destroy">
    <property name="brand" value="长安"></property>
    <property name="speed" value="300"></property>
    <property name="price" value="100000"></property>
</bean>
<bean class="com.llf.bean.postprocess.MyBeanPostProcess"></bean>

 

这里是调用Java代码

package com.llf.test;

import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
 * @author linglongfang
 */
public class Main {
    public static void main(String[] args){
        ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext("beans.xml");

        Object car = ac.getBean("car"); //获取bean

        System.out.println(car); //打印bean

        ac.close();//关闭ioc容器

    }
}

 

这里是结果截图

技术分享图片

 

SpringIOC容器-xml配置bean-bean的生命周期及后置处理器 BeanPostProcess

原文:https://www.cnblogs.com/linglongfang/p/12726848.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!