說明
1、創(chuàng)建工廠類,繼承或者實(shí)現(xiàn)基礎(chǔ)接口。
通過繼承BaseGenericObjectPool或者實(shí)現(xiàn)基礎(chǔ)接口PooledObjectFactory,并按照業(yè)務(wù)需求重寫對象的創(chuàng)建、銷毀、校驗(yàn)、激活、鈍化方法,其中銷毀多為連接的關(guān)閉、置空等。
2、創(chuàng)建池,繼承GenericObjectPool。
通過繼承GenericObjectPool或者實(shí)現(xiàn)基礎(chǔ)接口ObjectPool,建議使用前者,它為我們提供了空閑對象驅(qū)逐檢測機(jī)制(即將空閑隊(duì)列中長時(shí)間未使用的對象銷毀,降低內(nèi)存占用),以及提供了很多對象的基本信息,例如對象最后被使用的時(shí)間、使用對象前是否檢驗(yàn)等。
3、創(chuàng)建池相關(guān)配置
通過繼承GenericObjectPoolConfig或者繼承BaseObjectPoolConfig,來增加對線程池的配置控制,建議使用前者,它為我們實(shí)現(xiàn)了基本方法,只需要自己添加需要的屬性即可。
4、創(chuàng)建包裝類
即要存在于對象池中的對象,在實(shí)際對象之外添加許多基礎(chǔ)屬性,便于了解對象池中對象的實(shí)時(shí)狀態(tài)。
實(shí)例
private volatile int maxIdle = GenericObjectPoolConfig.DEFAULT_MAX_IDLE;
private volatile int minIdle = GenericObjectPoolConfig.DEFAULT_MIN_IDLE;
public static final int DEFAULT_MAX_IDLE = 8;
public static final int DEFAULT_MIN_IDLE = 0;
以上就是java對象池的使用步驟,希望對大家有所幫助。更多關(guān)于“java培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時(shí)歡迎你來試聽。