クラス CommonsPool2TargetSource
java.lang.ObjectSE
org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource
org.springframework.aop.target.AbstractPrototypeBasedTargetSource
org.springframework.aop.target.AbstractPoolingTargetSource
org.springframework.aop.target.CommonsPool2TargetSource
- 実装されているすべてのインターフェース:
SerializableSE、org.apache.commons.pool2.PooledObjectFactory<ObjectSE>、PoolingConfig、TargetClassAware、TargetSource、Aware、BeanFactoryAware、DisposableBean
public class CommonsPool2TargetSource
extends AbstractPoolingTargetSource
implements org.apache.commons.pool2.PooledObjectFactory<ObjectSE>
構成可能な Apache Commons2 プールにオブジェクトを保持する
TargetSource 実装。 デフォルトでは、GenericObjectPool のインスタンスが作成されます。サブクラスは、createObjectPool() メソッドをオーバーライドすることにより、使用される ObjectPool の型を変更する場合があります。
Commons Pool GenericObjectPool クラスの構成プロパティを反映した多くの構成プロパティを提供します。これらのプロパティは、構築中に GenericObjectPool に渡されます。このクラスのサブクラスを作成して ObjectPool 実装型を変更する場合は、選択した実装に関連する構成プロパティの値を渡します。
このクラスで使用される PoolableObjectFactory の実装は意味のある検証を実装しないため、testOnBorrow、testOnReturn、testWhileIdle プロパティは明示的にミラーリングされません。公開されているすべての Commons Pool プロパティは、対応する Commons Pool のデフォルトを使用します。
Spring 4.2 以降、Apache Commons プール 2.4 と互換性があります。
- 導入:
- 4.2
- 作成者:
- Rod Johnson, Rob Harrop, Juergen Hoeller, Stephane Nicoll, Kazuki Shimizu
- 関連事項:
フィールドのサマリー
クラス org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource から継承されたフィールド
loggerコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明voidactivateObject(org.apache.commons.pool2.PooledObject<ObjectSE> p) protected org.apache.commons.pool2.ObjectPoolサブクラスは、特定の Commons プールを返したい場合にこれをオーバーライドできます。protected final voidObjectPool インスタンスを作成して保持します。voiddestroy()このオブジェクトを破棄するときに、基になるObjectPoolを閉じます。voiddestroyObject(org.apache.commons.pool2.PooledObject<ObjectSE> p) intプール内のアクティブなオブジェクトの数を返します。intプール内のアイドルオブジェクトの数を返します。intプール内のアイドルオブジェクトの最大数を返します。longプールからオブジェクトをフェッチするための最大待機時間を返します。longアイドル状態のオブジェクトがプールに留まることができる最小時間を返します。intプール内のアイドルオブジェクトの最小数を返します。ObjectPoolからオブジェクトを借用します。longアイドルオブジェクトをチェックするエビクション実行間の時間を返します。booleanプールが使い果たされたときに呼び出しをブロックするかどうかを指定します。org.apache.commons.pool2.PooledObject<ObjectSE>voidpassivateObject(org.apache.commons.pool2.PooledObject<ObjectSE> p) voidreleaseTarget(ObjectSE target) 指定されたオブジェクトを基本となるObjectPoolに返します。voidsetBlockWhenExhausted(boolean blockWhenExhausted) プールが使い果たされたときに呼び出しをブロックするかどうかを設定します。voidsetMaxIdle(int maxIdle) プール内のアイドルオブジェクトの最大数を設定します。voidsetMaxWait(long maxWait) プールからオブジェクトをフェッチするための最大待機時間を設定します。voidsetMinEvictableIdleTimeMillis(long minEvictableIdleTimeMillis) アイドル状態のオブジェクトがエビクションの対象になる前にプールにとどまることができる最小時間を設定します。voidsetMinIdle(int minIdle) プール内のアイドルオブジェクトの最小数を設定します。voidsetTimeBetweenEvictionRunsMillis(long timeBetweenEvictionRunsMillis) アイドル状態のオブジェクトが長時間アイドル状態であるか無効であるかをチェックする、エビクション実行の間隔を設定します。booleanvalidateObject(org.apache.commons.pool2.PooledObject<ObjectSE> p) クラス org.springframework.aop.target.AbstractPoolingTargetSource から継承されたメソッド
getMaxSize, getPoolingConfigMixin, setBeanFactory, setMaxSizeクラス org.springframework.aop.target.AbstractPrototypeBasedTargetSource から継承されたメソッド
destroyPrototypeInstance, newPrototypeInstance, writeReplaceクラス org.springframework.aop.target.AbstractBeanFactoryBasedTargetSource から継承されたメソッド
copyFrom, equals, getBeanFactory, getTargetBeanName, getTargetClass, hashCode, setTargetBeanName, setTargetClass, toStringクラス java.lang.ObjectSE から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, waitSE, waitSEインターフェース org.apache.commons.pool2.PooledObjectFactory から継承されたメソッド
destroyObjectインターフェース org.springframework.aop.TargetSource から継承されたメソッド
isStatic
コンストラクターの詳細
CommonsPool2TargetSource
public CommonsPool2TargetSource()デフォルト設定で CommonsPoolTargetSource を作成します。プールのデフォルトの最大サイズは 8 です。- 関連事項:
AbstractPoolingTargetSource.setMaxSize(int)GenericObjectPoolConfig.setMaxTotal(int)
メソッドの詳細
setMaxIdle
public void setMaxIdle(int maxIdle) プール内のアイドルオブジェクトの最大数を設定します。デフォルトは 8 です。- 関連事項:
GenericObjectPool.setMaxIdle(int)
getMaxIdle
public int getMaxIdle()プール内のアイドルオブジェクトの最大数を返します。setMinIdle
public void setMinIdle(int minIdle) プール内のアイドルオブジェクトの最小数を設定します。デフォルトは 0 です。- 関連事項:
GenericObjectPool.setMinIdle(int)
getMinIdle
public int getMinIdle()プール内のアイドルオブジェクトの最小数を返します。setMaxWait
public void setMaxWait(long maxWait) プールからオブジェクトをフェッチするための最大待機時間を設定します。デフォルトは -1 で、永久に待機します。- 関連事項:
BaseGenericObjectPool.setMaxWaitMillis(long)
getMaxWait
public long getMaxWait()プールからオブジェクトをフェッチするための最大待機時間を返します。setTimeBetweenEvictionRunsMillis
public void setTimeBetweenEvictionRunsMillis(long timeBetweenEvictionRunsMillis) アイドル状態のオブジェクトをチェックするエビクションの実行間隔を設定します。これらのオブジェクトは、アイドル状態が長すぎるか、無効になったかを確認します。デフォルトは -1 で、エビクションは実行されません。- 関連事項:
BaseGenericObjectPool.setTimeBetweenEvictionRunsMillis(long)
getTimeBetweenEvictionRunsMillis
public long getTimeBetweenEvictionRunsMillis()アイドルオブジェクトをチェックするエビクション実行間の時間を返します。setMinEvictableIdleTimeMillis
public void setMinEvictableIdleTimeMillis(long minEvictableIdleTimeMillis) アイドル状態のオブジェクトがエビクションの対象になる前にプールにとどまることができる最小時間を設定します。デフォルトは 1800000 (30 分です)。この設定を有効にするには、追い出しを実行する必要があることに注意してください。
- 関連事項:
setTimeBetweenEvictionRunsMillis(long)BaseGenericObjectPool.setMinEvictableIdleTimeMillis(long)
getMinEvictableIdleTimeMillis
public long getMinEvictableIdleTimeMillis()アイドル状態のオブジェクトがプールに留まることができる最小時間を返します。setBlockWhenExhausted
public void setBlockWhenExhausted(boolean blockWhenExhausted) プールが使い果たされたときに呼び出しをブロックするかどうかを設定します。isBlockWhenExhausted
public boolean isBlockWhenExhausted()プールが使い果たされたときに呼び出しをブロックするかどうかを指定します。createPool
protected final void createPool()ObjectPool インスタンスを作成して保持します。- 次で指定:
- クラス
AbstractPoolingTargetSourceのcreatePool - 関連事項:
createObjectPool
protected org.apache.commons.pool2.ObjectPool createObjectPool()サブクラスは、特定の Commons プールを返したい場合にこれをオーバーライドできます。ここでプールに構成プロパティを適用する必要があります。デフォルトは、指定されたプールサイズの GenericObjectPool インスタンスです。
- 戻り値:
- 空の Commons
ObjectPool。 - 関連事項:
GenericObjectPoolAbstractPoolingTargetSource.setMaxSize(int)
getTarget
ObjectPoolからオブジェクトを借用します。- 次で指定:
- インターフェース
TargetSourceのgetTarget - 次で指定:
- クラス
AbstractPoolingTargetSourceのgetTarget - 戻り値:
- プールからのオブジェクト
- 例外:
ExceptionSE- プール API からのチェック済み例外を処理する必要がある場合があるため、例外シグネチャーを許容します
releaseTarget
指定されたオブジェクトを基本となるObjectPoolに返します。- 次で指定:
- インターフェース
TargetSourceのreleaseTarget - 次で指定:
- クラス
AbstractPoolingTargetSourceのreleaseTarget - パラメーター:
target-getTarget()の呼び出しを介してプールから取得されている必要があるオブジェクト- 例外:
ExceptionSE- プーリング API が例外をスローできるようにする- 関連事項:
getActiveCount
インターフェースからコピーされた説明:PoolingConfigプール内のアクティブなオブジェクトの数を返します。- 次で指定:
- インターフェース
PoolingConfigのgetActiveCount - 例外:
UnsupportedOperationExceptionSE- プールでサポートされていない場合
getIdleCount
インターフェースからコピーされた説明:PoolingConfigプール内のアイドルオブジェクトの数を返します。- 次で指定:
- インターフェース
PoolingConfigのgetIdleCount - 例外:
UnsupportedOperationExceptionSE- プールでサポートされていない場合
destroy
このオブジェクトを破棄するときに、基になるObjectPoolを閉じます。- 次で指定:
- インターフェース
DisposableBeanのdestroy - 例外:
ExceptionSE- シャットダウンエラーの場合。例外はログに記録されますが、再スローされず、他の Bean もリソースを解放できます。
makeObject
- 次で指定:
- インターフェース
org.apache.commons.pool2.PooledObjectFactory<ObjectSE>のmakeObject - 例外:
ExceptionSE
destroyObject
- 次で指定:
- インターフェース
org.apache.commons.pool2.PooledObjectFactory<ObjectSE>のdestroyObject - 例外:
ExceptionSE
validateObject
- 次で指定:
- インターフェース
org.apache.commons.pool2.PooledObjectFactory<ObjectSE>のvalidateObject
activateObject
- 次で指定:
- インターフェース
org.apache.commons.pool2.PooledObjectFactory<ObjectSE>のactivateObject - 例外:
ExceptionSE
passivateObject
- 次で指定:
- インターフェース
org.apache.commons.pool2.PooledObjectFactory<ObjectSE>のpassivateObject - 例外:
ExceptionSE