Bean对象的生命周期
Posted lililixuefei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bean对象的生命周期相关的知识,希望对你有一定的参考价值。
-
单例对象
出生:当容器创建对象出生
活着:只要容器还在,对象一直活着
死亡:容器销毁,对象消亡
总结:单例对象的生命周期和容器相同
-
多例对象
出生:当我们使用对象时spring框架为我们创建 活着:只要使用就一直在活着
死亡:当对象长时间不用,且没有别的对象使用时,由Java回收机制回收
举个例子:单例对象
package com.xuefei.service.impl; import com.xuefei.service.AccountService; /** * 账户业务层实现类 */ public class AccountServiceImpl implements AccountService { public void init(){ System.out.println("对象初始化!"); } public AccountServiceImpl() { System.out.println("对象创建了!"); } public void destory(){ System.out.println("对象销毁了!"); } public void saveAccount() { } }
<bean id="accountService" class="com.xuefei.factory.StaticFactory" factory-method="getAccountService" scope="singleton" init-method="init" destroy-method="destory"></bean>
public class Client { public static void main(String[] args) { ClassPathXmlApplicationContext app = new ClassPathXmlApplicationContext("beans.xml"); //因为我们需要调用close AccountService accountService = (AccountService) app.getBean("accountService"); System.out.println(accountService); //手动销毁 app.close(); } }
<bean id="accountService" class="com.xuefei.factory.StaticFactory" factory-method="getAccountService" scope="prototype" init-method="init" destroy-method="destory"></bean>
以上是关于Bean对象的生命周期的主要内容,如果未能解决你的问题,请参考以下文章