クラス 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
- 関連事項:
フィールド概要
インターフェース SmartLifecycle から継承されたフィールド
DEFAULT_PHASEコンストラクター概要
コンストラクターコンストラクター説明デフォルト設定 (デフォルトの接続プーリング) で新しいJedisConnectionFactoryインスタンスを構築します。JedisConnectionFactory(@Nullable RedisSentinelConfiguration sentinelConfiguration, @Nullable redis.clients.jedis.JedisPoolConfig poolConfig) 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(RedisStandaloneConfiguration standaloneConfiguration) 指定されたRedisStandaloneConfigurationを使用して新しいJedisConnectionFactoryインスタンスを構築します。JedisConnectionFactory(RedisStandaloneConfiguration standaloneConfiguration, JedisClientConfiguration clientConfiguration) 指定されたRedisStandaloneConfigurationおよびJedisClientConfigurationを使用して、新しいJedisConnectionFactoryインスタンスを構築します。JedisConnectionFactory(redis.clients.jedis.JedisPoolConfig poolConfig) 指定されたプール構成を使用して、新しいJedisConnectionFactoryインスタンスを構築します。方法の概要
修飾子と型メソッド説明voidprotected redis.clients.jedis.JedisClustercreateCluster(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 ClusterTopologyProvidercreateTopologyProvider(redis.clients.jedis.JedisCluster cluster) JedisClusterを指定してClusterTopologyProviderを作成するためのテンプレートメソッド。voiddestroy()protected redis.clients.jedis.JedisRedis 接続として使用される Jedis インスタンスを返します。@Nullable StringSEクライアント名を返します。@Nullable RedisClusterConfigurationRedis クラスターとの対話に適したconnectionを返します。Redis との対話に適したconnectionを返します。booleanパイプライン化された結果を期待されるデータ型に変換する必要があるかどうかを指定します。intデータベースのインデックスを返します。Redis ホスト名を返します。@Nullable StringSERedis サーバーでの認証に使用されるパスワードを返します。intgetPhase()<T> @Nullable org.apache.commons.pool2.impl.GenericObjectPoolConfig<T> poolConfig を返します。intgetPort()Redis インスタンスへの接続に使用されるポートを返します。@Nullable RedisSentinelConfigurationRedis Sentinel との対話に適したconnectionを返します。@Nullable RedisStandaloneConfigurationintタイムアウトを返します。boolean接続プールの使用を示します。booleanbooleanbooleanbooleanbooleanbooleanisUseSsl()SSL を使用するかどうかを返します。protected JedisClusterConnectionpostProcessConnection(JedisClusterConnection connection) 新しく取得した接続を後処理します。protected JedisConnectionpostProcessConnection(JedisConnection connection) 新しく取得した接続を後処理します。voidsetAutoStartup(boolean autoStartup) コンテナーに含まれる ApplicationContext がリフレッシュされたときに、このライフサイクル接続ファクトリがコンテナーによって自動的に開始されるかどうかを構成します。voidsetClientName(StringSE clientName) 使用すべきではありません。voidsetConvertPipelineAndTxResults(boolean convertPipelineAndTxResults) パイプライン化された結果を期待されるデータ型に変換する必要があるかどうかを指定します。voidsetDatabase(int index) 使用すべきではありません。2.0 以降、RedisStandaloneConfigurationまたはRedisSentinelConfigurationを使用してデータベースインデックスを構成します。voidsetEarlyStartup(boolean earlyStartup) Bean が初期化されるときに、この InitializingBean のコンポーネントライフサイクルをafterPropertiesSet()によって早期に開始するかどうかを構成します。voidsetExecutor(AsyncTaskExecutor executor) クラスター全体でコマンドを非同期に実行するために使用されるexecutorを構成します。voidsetHostName(StringSE hostName) 使用すべきではありません。2.0 以降、RedisStandaloneConfigurationを使用してホスト名を構成します。voidsetPassword(StringSE password) 使用すべきではありません。2.0 以降、RedisStandaloneConfiguration、RedisSentinelConfiguration、RedisClusterConfigurationを使用してパスワードを構成します。voidsetPhase(int phase) このエグゼキュータを一時停止および再開するためのライフサイクルフェーズを指定します。voidsetPoolConfig(redis.clients.jedis.JedisPoolConfig poolConfig) 使用すべきではありません。2.0 以降、JedisClientConfigurationを使用してJedisPoolConfigを構成します。voidsetPort(int port) 使用すべきではありません。2.0 以降、RedisStandaloneConfigurationを使用してポートを構成します。voidsetTimeout(int timeout) 使用すべきではありません。2.0 以降、JedisClientConfigurationを使用してタイムアウトを構成します。voidsetUsePool(boolean usePool) 使用すべきではありません。2.0 以降、JedisClientConfigurationを使用してプーリングの使用箇所を構成します。voidsetUseSsl(boolean useSsl) 使用すべきではありません。2.0 以降、JedisClientConfigurationを使用して SSL の使用を構成します。voidstart()voidstop()@Nullable DataAccessExceptionクラス ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース SmartLifecycle から継承されたメソッド
isPauseable, 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(@Nullable 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
getHostName
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
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
public <T> @Nullable org.apache.commons.pool2.impl.GenericObjectPoolConfig<T> getPoolConfig()poolConfig を返します。- 戻り値:
- poolConfig
setPoolConfig
使用すべきではありません。2.0 以降、JedisClientConfigurationを使用してJedisPoolConfigを構成します。このファクトリのプール構成を設定します。- パラメーター:
poolConfig- poolConfig を設定します。- 例外:
IllegalStateExceptionSE-JedisClientConfigurationが不変の場合。
getDatabase
public int getDatabase()データベースのインデックスを返します。- 戻り値:
- データベースインデックス。
setDatabase
使用すべきではありません。2.0 以降、RedisStandaloneConfigurationまたはRedisSentinelConfigurationを使用してデータベースインデックスを構成します。この接続ファクトリが使用するデータベースのインデックスを設定します。デフォルトは 0 です。- パラメーター:
index- データベースインデックス。
getClientName
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
stop
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
インターフェースからコピーされた説明:RedisConnectionFactoryRedis との対話に適したconnectionを返します。- 次で指定:
- インターフェース
RedisConnectionFactoryのgetConnection - 戻り値:
- Redis と対話するための
connection。
fetchJedisConnector
protected redis.clients.jedis.Jedis fetchJedisConnector()Redis 接続として使用される Jedis インスタンスを返します。インスタンスは、新しく作成することも、プールから取得することもできます。- 戻り値:
- Jedis インスタンスを
RedisConnectionにラップする準備ができました。
postProcessConnection
新しく取得した接続を後処理します。新しい接続で初期化コマンドを装飾または実行できます。この実装は単に接続を返します。- パラメーター:
connection- ジェダイの接続。- 戻り値:
- 処理された接続
getClusterConnection
インターフェースからコピーされた説明:RedisConnectionFactoryRedis クラスターとの対話に適したconnectionを返します。- 次で指定:
- インターフェース
RedisConnectionFactoryのgetClusterConnection - 戻り値:
- Redis クラスターと対話するための
connection。
postProcessConnection
新しく取得した接続を後処理します。新しい接続で初期化コマンドを装飾または実行できます。この実装は単に接続を返します。- パラメーター:
connection- ジェダイの接続。- 戻り値:
- 処理された接続。
- 導入:
- 3.2
translateExceptionIfPossible
- 次で指定:
- インターフェース
PersistenceExceptionTranslatorのtranslateExceptionIfPossible
getSentinelConnection
インターフェースからコピーされた説明:RedisConnectionFactoryRedis Sentinel との対話に適したconnectionを返します。- 次で指定:
- インターフェース
RedisConnectionFactoryのgetSentinelConnection - 戻り値:
- Redis Sentinel と対話するための
connection。
JedisClientConfigurationを使用してクライアント名を構成します。