首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Spring Bean 生命週期(三):使用 init-method / destroy-method 定義初始化與銷毀回調

     編輯:Java 相關知識

XML 配置方式

在 <bean> 標籤指定:

<bean id="animal" class="ioc.test.Animal" init-method="start" destroy-method="end"> <property name="age" value="5"/> <property name="name" value="豬"/> </bean>

全域預設:<beans default-init-method="start" default-destroy-method="end">。

POJO 類別

public class Animal { private String name; private int age; public void start() { System.out.println("初始化 start()"); } public void end() { System.out.println("銷毀 end()"); } public String speak() { return "名字:" + name + ",年齡:" + age; } // getter/setter 略 }

測試驗證

AbstractApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); ctx.registerShutdownHook(); // 必須註冊關閉鉤子,才會觸發 destroy-method Animal a = (Animal) ctx.getBean("animal"); System.out.println(a.speak());

執行結果

初始化 start()
名字:豬,年齡:5
銷毀 end()

注意事項

  • 方法簽名:public void xxx() throws Exception。
  • registerShutdownHook() 或手動 ctx.close() 才會調用銷毀回調。
  • 不侵入業務代碼,無 Spring 依賴,推薦使用。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved