首页 > 编程语言 > 详细

一步步实现:springbean的生命周期测试代码

时间:2019-04-11 22:48:35      阅读:124      评论:0      收藏:0      [点我收藏+]

 

1. 创建实体SpringBean

public class SpringBean {

    private String username;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
        System.out.println("setter---调用set方法进行赋值===="+username);
    }

    public SpringBean() {
        super();
        System.out.println("constructor---SpringBean 的构造方法");
    }

    public void print(){
        System.out.println("业务逻辑---SrpingBean 的真实业务逻辑");
    }

    public void init(){
        System.out.println("init---SpringBean 的自定义init方法");
    }
    public void destroy(){
        System.out.println("destroy---SpringBean 的自定义destroy方法");
    }

    @Override
    public String toString() {
        return "SpringBean [username=" + username + "]";
    }   

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

2. 配置applicationContext.xml

在applicationContext.xml中配置自定义的实体类。

技术分享图片

3.测试SpringBean的生命周期

public class Test {

    public static void main(String[] args) {
        //1.加载配置文件
        ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");

        //2.获取IOC容器中自定义的实体SpringBean
        SpringBean bean=(SpringBean) ctx.getBean("springBean");
        System.out.println(bean);

        //3.关闭IOC容器:ctx.close();,只有IOC容器关闭才会调用destroy方法
        System.out.println("-----------------------关闭IOC容器---------------------");
        ctx.close();
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

运行结果:

技术分享图片

4. SpringBean生命周期流程总结

启动IOC容器时:

1 通过构造器或工厂方法创建 Bean 实例 
2 为 Bean 的属性设置值和对其他 Bean 的引用 
3 调用 Bean 的初始化方法 
4 Bean 可以使用了 
5 当容器关闭时 close(), 调用 Bean 的销毁方法

技术分享图片

一步步实现:springbean的生命周期测试代码

原文:https://www.cnblogs.com/shoshana-kong/p/10692902.html

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