官术网_书友最值得收藏!

3.7 Bean的初始化與銷毀

對于Java的程序類,系統(tǒng)提供了默認(rèn)的初始化與銷毀處理方法:初始化采用構(gòu)造方法實(shí)現(xiàn),銷毀處理使用finliaze方法完成。這兩個方法,一個是對象實(shí)例化之后的調(diào)用,一個是對象被回收前的調(diào)用。Spring開發(fā)框架中,由于所有的對象都?xì)wSpring管理,所以無法使用Java中的初始化與銷毀方法,但開發(fā)者可以定義自己的初始化和銷毀的操作,在這一基礎(chǔ)上又追加了自定義初始化與銷毀的方法設(shè)置。

1.【mldnspring-base項(xiàng)目】定義Message類,并自定義初始化與銷毀方法。

2.【mldnspring-base項(xiàng)目】修改spring-base.xml配置文件,追加初始化與銷毀處理。

本程序中使用了init-method定義了Bean的初始化方法,destroy-method定義了Bean的銷毀方法。

3.【mldnspring-base項(xiàng)目】編寫程序啟動Spring容器。默認(rèn)情況下,會自動調(diào)用配置中init-method所定義的方法進(jìn)行初始化。如果想觀察銷毀方法調(diào)用,則必須明確地進(jìn)行注冊銷毀處理。

可以發(fā)現(xiàn),在Spring中定義的初始化方法是在構(gòu)造方法調(diào)用后才會執(zhí)行,同時(shí)只有執(zhí)行了容器銷毀后,ctx.registerShutdownHook()才可以明確發(fā)現(xiàn)銷毀方法調(diào)用。

提示:銷毀操作會由容器自動完成。

在進(jìn)行Spring項(xiàng)目整合開發(fā)時(shí),可以利用銷毀處理來釋放資源。例如,在與ORMapping開發(fā)框架整合時(shí),可以利用銷毀操作調(diào)用數(shù)據(jù)庫關(guān)閉處理。大部分情況下,銷毀操作會由Spring自行處理,開發(fā)者并不需要進(jìn)行關(guān)注。

主站蜘蛛池模板: 莱西市| 伊吾县| 崇文区| 襄垣县| 栾川县| 丽江市| 东乡| 浑源县| 通山县| 攀枝花市| 潞城市| 台州市| 马鞍山市| 当阳市| 萨迦县| 陆河县| 那曲县| 奈曼旗| 洮南市| 苍南县| 濉溪县| 天台县| 西乌| 红河县| 东兰县| 正阳县| 锦州市| 武安市| 中江县| 尉氏县| 娄烦县| 会理县| 永德县| 上虞市| 屏边| 荃湾区| 张家界市| 许昌市| 静乐县| 墨玉县| 青阳县|