標籤:cto lam redis turn 參數 兩種 err 方法 out
<!-- 叢集版配置 --> <bean id="jedisCluster" class="redis.clients.jedis.JedisCluster"> <constructor-arg name="nodes"> <set> <bean class="redis.clients.jedis.HostAndPort"> <constructor-arg name="host" value="192.168.25.128"></constructor-arg> <constructor-arg name="port" value="7001"></constructor-arg> </bean> <bean class="redis.clients.jedis.HostAndPort"> <constructor-arg name="host" value="192.168.25.128"></constructor-arg> <constructor-arg name="port" value="7002"></constructor-arg> </bean> <bean class="redis.clients.jedis.HostAndPort"> <constructor-arg name="host" value="192.168.25.128"></constructor-arg> <constructor-arg name="port" value="7003"></constructor-arg> </bean> <bean class="redis.clients.jedis.HostAndPort"> <constructor-arg name="host" value="192.168.25.128"></constructor-arg> <constructor-arg name="port" value="7004"></constructor-arg> </bean> <bean class="redis.clients.jedis.HostAndPort"> <constructor-arg name="host" value="192.168.25.128"></constructor-arg> <constructor-arg name="port" value="7005"></constructor-arg> </bean> <bean class="redis.clients.jedis.HostAndPort"> <constructor-arg name="host" value="192.168.25.128"></constructor-arg> <constructor-arg name="port" value="7006"></constructor-arg> </bean> </set> </constructor-arg> </bean> <bean id="jedisClientCluster" class="com.lamsey.jedis.JedisClientCluster"> <property name="jedisCluster" ref="jedisCluster"/> </bean>
首先配置:叢集的串連地址
查看JedisCluster的源碼:
參數名為nodes的set集合
public JedisCluster(Set<HostAndPort> nodes) { this(nodes, DEFAULT_TIMEOUT); }
1.所以採用構造體賦值,構造體內採用set集合:
<constructor-arg name="nodes"> <set>
......
</set> </constructor-arg>
2.HostAndPort屬於另外的類,所以建立bean:
查看源碼,需要配置兩個屬性:
可以用propety和構造器兩種方法配置
public HostAndPort(String host, int port) { this.host = host; this.port = port; }
<bean class="redis.clients.jedis.HostAndPort"> <constructor-arg name="host" value="192.168.25.128"></constructor-arg> <constructor-arg name="port" value="7001"></constructor-arg> </bean>
最後與實作類別結合起來使用:
<bean id="jedisClientCluster" class="com.lamsey.jedis.JedisClientCluster"> <property name="jedisCluster" ref="jedisCluster"/> </bean>
因為實作類別裡面有jedisCluster的set方法,所以能夠用property進行賦值。
public class JedisClientCluster implements JedisClient{ private JedisCluster jedisCluster; public JedisCluster getJedisCluster() { return jedisCluster; } public void setJedisCluster(JedisCluster jedisCluster) { this.jedisCluster = jedisCluster; } @Override public String set(String key, String value) { return jedisCluster.set(key, value); }}
完成叢集的串連地址配置後,
就可以用
jedisCluster.set(key, value);進行操作了。
通過這個過程分析,算是比較清楚瞭解了bean和java類之間的聯絡了,哈哈哈。
redis的spring的xml配置