クラス JedisConnectionFactory
- 実装されたすべてのインターフェース:
DisposableBean
、InitializingBean
、Lifecycle
、Phased
、SmartLifecycle
、PersistenceExceptionTranslator
、RedisConnectionFactory
JedisConnectionFactory
は、環境構成と client configuration
を使用して構成する必要があります。Jedis は、次の環境構成をサポートしています。
この接続ファクトリは、柔軟なライフサイクル制御のために InitializingBean
と SmartLifecycle
を実装します。接続を取得するには、initialized
と started
である必要があります。デフォルトでは、この Initialization
、starts
、Bean、early
です。必要に応じて、この接続ファクトリを Lifecycle.stop()
および restart
にすることができます。early startup
を無効にすると、auto-startup
が有効になっている場合にライフサイクル管理がコンテナーのリフレッシュに委ねられます。
JedisConnection
とその clustered variant
はスレッドセーフではないため、インスタンスをスレッド間で共有すべきではないことに注意してください。マルチスレッド環境での Jedis の構成に関するガイダンスについては、ジェダイのドキュメントを参照してください。
- 作成者:
- Costin Leau, Thomas Darimont, Christoph Strobl, Mark Paluch, Fu Jian, Ajith Kumar
- 関連事項:
フィールドのサマリー
インターフェース org.springframework.context.SmartLifecycle から継承されたフィールド
DEFAULT_PHASE
コンストラクターの概要
コンストラクターコンストラクター説明デフォルト設定 (デフォルトの接続プーリング) で新しいJedisConnectionFactory
インスタンスを構築します。JedisConnectionFactory
(RedisClusterConfiguration clusterConfiguration) JedisCluster
を作成するために適用された特定のRedisClusterConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。JedisConnectionFactory
(RedisClusterConfiguration clusterConfiguration, JedisClientConfiguration clientConfiguration) 指定されたRedisClusterConfiguration
およびJedisClientConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。JedisConnectionFactory
(RedisClusterConfiguration clusterConfiguration, redis.clients.jedis.JedisPoolConfig poolConfig) JedisCluster
を作成するために適用された特定のRedisClusterConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。JedisConnectionFactory
(RedisSentinelConfiguration sentinelConfiguration) JedisConnectionFactory
(RedisSentinelConfiguration sentinelConfiguration, JedisClientConfiguration clientConfiguration) 指定されたRedisSentinelConfiguration
およびJedisClientConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。JedisConnectionFactory
(RedisSentinelConfiguration sentinelConfiguration, redis.clients.jedis.JedisPoolConfig poolConfig) JedisConnectionFactory
(RedisStandaloneConfiguration standaloneConfiguration) 指定されたRedisStandaloneConfiguration
を使用して新しいJedisConnectionFactory
インスタンスを構築します。JedisConnectionFactory
(RedisStandaloneConfiguration standaloneConfiguration, JedisClientConfiguration clientConfiguration) 指定されたRedisStandaloneConfiguration
およびJedisClientConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。JedisConnectionFactory
(redis.clients.jedis.JedisPoolConfig poolConfig) 指定されたプール構成を使用して、新しいJedisConnectionFactory
インスタンスを構築します。メソッドのサマリー
修飾子と型メソッド説明void
protected redis.clients.jedis.JedisCluster
createCluster
(RedisClusterConfiguration clusterConfig, org.apache.commons.pool2.impl.GenericObjectPoolConfig<redis.clients.jedis.Connection> poolConfig) protected redis.clients.jedis.util.Pool<redis.clients.jedis.Jedis>
JedisPool
を作成します。protected redis.clients.jedis.util.Pool<redis.clients.jedis.Jedis>
JedisSentinelPool
を作成します。protected ClusterTopologyProvider
createTopologyProvider
(redis.clients.jedis.JedisCluster cluster) JedisCluster
を指定してClusterTopologyProvider
を作成するためのテンプレートメソッド。void
destroy()
protected redis.clients.jedis.Jedis
Redis 接続として使用される Jedis インスタンスを返します。クライアント名を返します。Redis クラスターとの対話に適したconnection
を返します。Redis との対話に適したconnection
を返します。boolean
パイプライン化された結果を期待されるデータ型に変換する必要があるかどうかを指定します。int
データベースのインデックスを返します。Redis ホスト名を返します。Redis サーバーでの認証に使用されるパスワードを返します。int
getPhase()
<T> org.apache.commons.pool2.impl.GenericObjectPoolConfig<T>
poolConfig を返します。int
getPort()
Redis インスタンスへの接続に使用されるポートを返します。Redis Sentinel との対話に適したconnection
を返します。int
タイムアウトを返します。boolean
接続プールの使用を示します。boolean
boolean
boolean
boolean
boolean
boolean
isUseSsl()
SSL を使用するかどうかを返します。protected JedisClusterConnection
postProcessConnection
(JedisClusterConnection connection) 新しく取得した接続を後処理します。protected JedisConnection
postProcessConnection
(JedisConnection connection) 新しく取得した接続を後処理します。void
setAutoStartup
(boolean autoStartup) コンテナーに含まれる ApplicationContext がリフレッシュされたときに、このライフサイクル接続ファクトリがコンテナーによって自動的に開始されるかどうかを構成します。void
setClientName
(StringSE clientName) 使用すべきではありません。void
setConvertPipelineAndTxResults
(boolean convertPipelineAndTxResults) パイプライン化された結果を期待されるデータ型に変換する必要があるかどうかを指定します。void
setDatabase
(int index) 使用すべきではありません。2.0 以降、RedisStandaloneConfiguration
またはRedisSentinelConfiguration
を使用してデータベースインデックスを構成します。void
setEarlyStartup
(boolean earlyStartup) Bean が初期化されるときに、この InitializingBean のコンポーネントライフサイクルをafterPropertiesSet()
によって早期に開始するかどうかを構成します。void
setExecutor
(AsyncTaskExecutor executor) クラスター全体でコマンドを非同期に実行するために使用されるexecutor
を構成します。void
setHostName
(StringSE hostName) 使用すべきではありません。2.0 以降、RedisStandaloneConfiguration
を使用してホスト名を構成します。void
setPassword
(StringSE password) 使用すべきではありません。2.0 以降、RedisStandaloneConfiguration
、RedisSentinelConfiguration
、RedisClusterConfiguration
を使用してパスワードを構成します。void
setPhase
(int phase) このエグゼキュータを一時停止および再開するためのライフサイクルフェーズを指定します。void
setPoolConfig
(redis.clients.jedis.JedisPoolConfig poolConfig) 使用すべきではありません。2.0 以降、JedisClientConfiguration
を使用してJedisPoolConfig
を構成します。void
setPort
(int port) 使用すべきではありません。2.0 以降、RedisStandaloneConfiguration
を使用してポートを構成します。void
setTimeout
(int timeout) 使用すべきではありません。2.0 以降、JedisClientConfiguration
を使用してタイムアウトを構成します。void
setUsePool
(boolean usePool) 使用すべきではありません。2.0 以降、JedisClientConfiguration
を使用してプーリングの使用箇所を構成します。void
setUseSsl
(boolean useSsl) 使用すべきではありません。2.0 以降、JedisClientConfiguration
を使用して SSL の使用を構成します。void
start()
void
stop()
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース org.springframework.context.SmartLifecycle から継承されたメソッド
stop
コンストラクターの詳細
JedisConnectionFactory
public JedisConnectionFactory()デフォルト設定 (デフォルトの接続プーリング) で新しいJedisConnectionFactory
インスタンスを構築します。JedisConnectionFactory
public JedisConnectionFactory(redis.clients.jedis.JedisPoolConfig poolConfig) 指定されたプール構成を使用して、新しいJedisConnectionFactory
インスタンスを構築します。- パラメーター:
poolConfig
- プール構成
JedisConnectionFactory
JedisCluster
を作成するために適用された特定のRedisClusterConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。- パラメーター:
clusterConfiguration
- null であってはなりません。- 導入:
- 1.7
JedisConnectionFactory
public JedisConnectionFactory(RedisClusterConfiguration clusterConfiguration, JedisClientConfiguration clientConfiguration) 指定されたRedisClusterConfiguration
およびJedisClientConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。- パラメーター:
clusterConfiguration
- null であってはなりません。clientConfiguration
- null であってはなりません。- 導入:
- 2.0
JedisConnectionFactory
public JedisConnectionFactory(RedisClusterConfiguration clusterConfiguration, redis.clients.jedis.JedisPoolConfig poolConfig) JedisCluster
を作成するために適用された特定のRedisClusterConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。- パラメーター:
clusterConfiguration
- null であってはなりません。- 導入:
- 1.7
JedisConnectionFactory
- パラメーター:
sentinelConfiguration
- null であってはなりません。- 導入:
- 1.4
JedisConnectionFactory
public JedisConnectionFactory(RedisSentinelConfiguration sentinelConfiguration, JedisClientConfiguration clientConfiguration) 指定されたRedisSentinelConfiguration
およびJedisClientConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。- パラメーター:
sentinelConfiguration
- null であってはなりません。clientConfiguration
- null であってはなりません。- 導入:
- 2.0
JedisConnectionFactory
public JedisConnectionFactory(RedisSentinelConfiguration sentinelConfiguration, @Nullable redis.clients.jedis.JedisPoolConfig poolConfig) - パラメーター:
sentinelConfiguration
- 使用する sentinel 構成。poolConfig
- プール構成。null の場合、デフォルトで新しいインスタンスになります。- 導入:
- 1.4
JedisConnectionFactory
指定されたRedisStandaloneConfiguration
を使用して新しいJedisConnectionFactory
インスタンスを構築します。- パラメーター:
standaloneConfiguration
- null であってはなりません。- 導入:
- 2.0
JedisConnectionFactory
public JedisConnectionFactory(RedisStandaloneConfiguration standaloneConfiguration, JedisClientConfiguration clientConfiguration) 指定されたRedisStandaloneConfiguration
およびJedisClientConfiguration
を使用して、新しいJedisConnectionFactory
インスタンスを構築します。- パラメーター:
standaloneConfiguration
- null であってはなりません。clientConfiguration
- null であってはなりません。- 導入:
- 2.0
メソッドの詳細
setExecutor
クラスター全体でコマンドを非同期に実行するために使用されるexecutor
を構成します。- パラメーター:
executor
-executor
は、クラスター全体でコマンドを非同期に実行していました。- 導入:
- 3.2
getHostName
Redis ホスト名を返します。- 戻り値:
- hostName。
setHostName
使用すべきではありません。2.0 以降、RedisStandaloneConfiguration
を使用してホスト名を構成します。Redis ホスト名を設定します。- パラメーター:
hostName
- 設定するホスト名。
isUseSsl
public boolean isUseSsl()SSL を使用するかどうかを返します。- 戻り値:
- SSL の使用。
- 導入:
- 1.8
setUseSsl
使用すべきではありません。2.0 以降、JedisClientConfiguration
を使用して SSL の使用を構成します。SSL を使用するかどうかを設定します。- パラメーター:
useSsl
- SSL を使用する場合は true。- 例外:
IllegalStateExceptionSE
-JedisClientConfiguration
が不変の場合。- 導入:
- 1.8
getPassword
Redis サーバーでの認証に使用されるパスワードを返します。- 戻り値:
- 認証用のパスワード。
setPassword
使用すべきではありません。2.0 以降、RedisStandaloneConfiguration
、RedisSentinelConfiguration
、RedisClusterConfiguration
を使用してパスワードを構成します。Redis サーバーでの認証に使用するパスワードを設定します。- パラメーター:
password
- 設定するパスワード。
getPort
public int getPort()Redis インスタンスへの接続に使用されるポートを返します。- 戻り値:
- Redis ポート。
setPort
使用すべきではありません。2.0 以降、RedisStandaloneConfiguration
を使用してポートを構成します。Redis インスタンスへの接続に使用するポートを設定します。- パラメーター:
port
- Redis ポート。
getTimeout
public int getTimeout()タイムアウトを返します。- 戻り値:
- タイムアウト。
setTimeout
使用すべきではありません。2.0 以降、JedisClientConfiguration
を使用してタイムアウトを構成します。タイムアウトを設定します。- パラメーター:
timeout
- 設定するタイムアウト。- 例外:
IllegalStateExceptionSE
-JedisClientConfiguration
が不変の場合。
getUsePool
public boolean getUsePool()接続プールの使用を示します。単一ノード Redis にのみ適用されます。Sentinel およびクラスターモードは、プール設定に関係なく、常に接続プールを使用します。
- 戻り値:
- 接続プーリングの使用。
setUsePool
使用すべきではありません。2.0 以降、JedisClientConfiguration
を使用してプーリングの使用箇所を構成します。接続プールの使用をオンまたはオフにします。- パラメーター:
usePool
- usePool を設定します。- 例外:
IllegalStateExceptionSE
-JedisClientConfiguration
が不変の場合。IllegalStateExceptionSE
- sentinel を使用するように構成されていて、usePool
が false の場合、Jedis は Redis sentinel を使用するためにプーリングを必要とします。
getPoolConfig
poolConfig を返します。- 戻り値:
- poolConfig
setPoolConfig
使用すべきではありません。2.0 以降、JedisClientConfiguration
を使用してJedisPoolConfig
を構成します。このファクトリのプール構成を設定します。- パラメーター:
poolConfig
- poolConfig を設定します。- 例外:
IllegalStateExceptionSE
-JedisClientConfiguration
が不変の場合。
getDatabase
public int getDatabase()データベースのインデックスを返します。- 戻り値:
- データベースインデックス。
setDatabase
使用すべきではありません。2.0 以降、RedisStandaloneConfiguration
またはRedisSentinelConfiguration
を使用してデータベースインデックスを構成します。この接続ファクトリが使用するデータベースのインデックスを設定します。デフォルトは 0 です。- パラメーター:
index
- データベースインデックス。
getClientName
クライアント名を返します。- 戻り値:
- クライアント名。
- 導入:
- 1.8
setClientName
使用すべきではありません。2.0 以降、JedisClientConfiguration
を使用してクライアント名を構成します。この接続ファクトリが使用するクライアント名を設定します。デフォルトは none で、クライアント名は設定されません。- パラメーター:
clientName
- クライアント名。- 例外:
IllegalStateExceptionSE
-JedisClientConfiguration
が不変の場合。- 導入:
- 1.8
getClientConfiguration
- 戻り値:
JedisClientConfiguration
- 導入:
- 2.0
getStandaloneConfiguration
- 戻り値:
RedisStandaloneConfiguration
- 導入:
- 2.0
getSentinelConfiguration
- 戻り値:
RedisStandaloneConfiguration
は null の可能性があります。- 導入:
- 2.0
getClusterConfiguration
- 戻り値:
RedisClusterConfiguration
は null の可能性があります。- 導入:
- 2.0
getPhase
public int getPhase()- 次で指定:
- インターフェース
Phased
のgetPhase
- 次で指定:
- インターフェース
SmartLifecycle
のgetPhase
setPhase
public void setPhase(int phase) このエグゼキュータを一時停止および再開するためのライフサイクルフェーズを指定します。デフォルトは0
です。- 導入:
- 3.2
- 関連事項:
isAutoStartup
public boolean isAutoStartup()- 次で指定:
- インターフェース
SmartLifecycle
のisAutoStartup
- 導入:
- 3.3
setAutoStartup
public void setAutoStartup(boolean autoStartup) コンテナーに含まれる ApplicationContext がリフレッシュされたときに、このライフサイクル接続ファクトリがコンテナーによって自動的に開始されるかどうかを構成します。この接続ファクトリは、デフォルトで
afterPropertiesSet()
中に早期自動起動に設定され、ライフサイクルの早い段階で Redis 接続を作成できる可能性があります。自動起動が有効になっている場合、接続の作成を ApplicationContext リフレッシュまで遅らせるには、setEarlyStartup(boolean)
を参照してください。- パラメーター:
autoStartup
- 接続ファクトリを自動的にstart()
する場合は true、それ以外の場合は false。- 導入:
- 3.3
- 関連事項:
isEarlyStartup
public boolean isEarlyStartup()- 戻り値:
afterPropertiesSet()
中にコンポーネントをstart()
するかどうか。- 導入:
- 3.3
setEarlyStartup
public void setEarlyStartup(boolean earlyStartup) Bean が初期化されるときに、この InitializingBean のコンポーネントライフサイクルをafterPropertiesSet()
によって早期に開始するかどうかを構成します。コンポーネントはデフォルトで自動起動になります。この方法は
auto-startup
に関連しており、ApplicationContext のリフレッシュまで Redis クライアントの起動を遅らせるために使用できます。早期起動を無効にしても、自動起動は無効になりません。- パラメーター:
earlyStartup
- コンポーネントを早期にstart()
する場合は true、それ以外の場合は false。- 導入:
- 3.3
- 関連事項:
getConvertPipelineAndTxResults
public boolean getConvertPipelineAndTxResults()パイプライン結果を予期されるデータ型に変換するかどうかを指定します。false
の場合、JedisConnection.closePipeline()
およびJedisConnection.exec()
の結果は、Jedis ドライバーによって返される型になります。- 次で指定:
- インターフェース
RedisConnectionFactory
のgetConvertPipelineAndTxResults
- 戻り値:
true
パイプラインとトランザクションの結果を変換します。それ以外の場合はfalse
。
setConvertPipelineAndTxResults
public void setConvertPipelineAndTxResults(boolean convertPipelineAndTxResults) パイプライン結果を予期されるデータ型に変換するかどうかを指定します。false
の場合、JedisConnection.closePipeline()
およびJedisConnection.exec()
の結果は、Jedis ドライバーによって返される型になります。- パラメーター:
convertPipelineAndTxResults
- パイプラインとトランザクションの結果を変換するtrue
。それ以外の場合はfalse
。
isRedisSentinelAware
public boolean isRedisSentinelAware()- 戻り値:
RedisSentinelConfiguration
が存在する場合は true。- 導入:
- 1.4
isRedisClusterAware
public boolean isRedisClusterAware()- 戻り値:
RedisClusterConfiguration
が存在する場合は true。- 導入:
- 2.0
afterPropertiesSet
public void afterPropertiesSet()- 次で指定:
- インターフェース
InitializingBean
のafterPropertiesSet
start
public void start()stop
public void stop()isRunning
public boolean isRunning()createRedisSentinelPool
protected redis.clients.jedis.util.Pool<redis.clients.jedis.Jedis> createRedisSentinelPool(RedisSentinelConfiguration config) JedisSentinelPool
を作成します。- パラメーター:
config
- 実際のRedisSentinelConfiguration
。null になることはありません。- 戻り値:
- 使用する
Pool
。null になることはありません。 - 導入:
- 1.4
createRedisPool
protected redis.clients.jedis.util.Pool<redis.clients.jedis.Jedis> createRedisPool()JedisPool
を作成します。- 戻り値:
- 使用する
Pool
。null になることはありません。 - 導入:
- 1.4
createTopologyProvider
JedisCluster
を指定してClusterTopologyProvider
を作成するためのテンプレートメソッド。デフォルトでJedisClusterConnection.JedisClusterTopologyProvider
を作成します。- パラメーター:
cluster
-JedisCluster
は null であってはなりません。- 戻り値:
ClusterTopologyProvider
- 関連事項:
createCluster
protected redis.clients.jedis.JedisCluster createCluster(RedisClusterConfiguration clusterConfig, org.apache.commons.pool2.impl.GenericObjectPoolConfig<redis.clients.jedis.Connection> poolConfig) - パラメーター:
clusterConfig
- null であってはなりません。poolConfig
- null でもかまいません。- 戻り値:
- 実際の
JedisCluster
。 - 導入:
- 1.7
destroy
public void destroy()- 次で指定:
- インターフェース
DisposableBean
のdestroy
getConnection
インターフェースからコピーされた説明:RedisConnectionFactory
Redis との対話に適したconnection
を返します。- 次で指定:
- インターフェース
RedisConnectionFactory
のgetConnection
- 戻り値:
- Redis と対話するための
connection
。
fetchJedisConnector
protected redis.clients.jedis.Jedis fetchJedisConnector()Redis 接続として使用される Jedis インスタンスを返します。インスタンスは、新しく作成することも、プールから取得することもできます。- 戻り値:
- Jedis インスタンスを
RedisConnection
にラップする準備ができました。
postProcessConnection
新しく取得した接続を後処理します。新しい接続で初期化コマンドを装飾または実行できます。この実装は単に接続を返します。- パラメーター:
connection
- ジェダイの接続。- 戻り値:
- 処理された接続
getClusterConnection
インターフェースからコピーされた説明:RedisConnectionFactory
Redis クラスターとの対話に適したconnection
を返します。- 次で指定:
- インターフェース
RedisConnectionFactory
のgetClusterConnection
- 戻り値:
- Redis クラスターと対話するための
connection
。
postProcessConnection
新しく取得した接続を後処理します。新しい接続で初期化コマンドを装飾または実行できます。この実装は単に接続を返します。- パラメーター:
connection
- ジェダイの接続。- 戻り値:
- 処理された接続。
- 導入:
- 3.2
translateExceptionIfPossible
- 次で指定:
- インターフェース
PersistenceExceptionTranslator
のtranslateExceptionIfPossible
getSentinelConnection
インターフェースからコピーされた説明:RedisConnectionFactory
Redis Sentinel との対話に適したconnection
を返します。- 次で指定:
- インターフェース
RedisConnectionFactory
のgetSentinelConnection
- 戻り値:
- Redis Sentinel と対話するための
connection
。
JedisClientConfiguration
を使用してクライアント名を構成します。