在redis java客户端中,我发现了这个:
To use it, init a pool:
JedisPool pool = new JedisPool(new JedisPoolConfig(), "localhost");
You can store the pool somewhere statically, it is thread-safe.
我只是想知道,使用 spring,我怎样才能静态存储 JedisPool。
你没有。
在春季,最好定义一个 JedisPool bean 并在必要时自动装配它。
例如,使用 xml 配置:
<bean id="jedisPool" class="redis.clients.jedis.JedisPool">
<constructor-arg>
<bean class="redis.clients.jedis.JedisPoolConfig" />
</consrtuctor-arg>
<constructor-arg value="localhost" />
</bean>
然后,在你的豆子里面:
@Autowire
JedisPool jedisPool;
如果你使用spring java config会更简单——你可以完全使用你发布的代码来定义池 bean:
@Configuration
public class Configuration {
@Bean
public JedisPool createJedisPool() {
return new JedisPool(new JedisPoolConfig(), "localhost");
}
}
此外,您可能想看看spring-data - redis