Java 春豆线对绝地武士安全吗?

Java 春豆线对绝地武士安全吗?,java,spring,thread-safety,jedis,Java,Spring,Thread Safety,Jedis,我们不太确定我们是否正确应用了绝地武士池,以便使用SpringBeans实现绝地武士线程安全 <bean id="redisOnlineManager" class="com.app.online.RedisOnlineManager> <property name="pool"> <bean class="redis.clients.jedis.JedisPool"> <constructor-arg value="redis:

我们不太确定我们是否正确应用了绝地武士池,以便使用SpringBeans实现绝地武士线程安全

<bean id="redisOnlineManager" class="com.app.online.RedisOnlineManager>
<property name="pool">
    <bean class="redis.clients.jedis.JedisPool">
        <constructor-arg value="redis://localhost:1234/1" />
    </bean>
</property>
我们正确地使用绝地武士池了吗?这段代码执行线程安全的绝地武士吗?如果不是,我们应该如何使用春豆来确保绝地武士的线程安全


请告知。。谢谢

他想说的是在
spring单例bean或类中使用静态方法创建池
来访问池。如果你做了这两件事中的任何一件,你都会没事的。您在代码中所做的是为ResourceManager的每个实例创建一个池,它可以像下面这样进行改进

@Scope("singleton")
public class ResourceManager {

    private JedisPool pool ;

    public ResourceManager(){
        pool = new JedisPool(new JedisPoolConfig(), "localhost");       
    }

    private boolean exists(String key) {
        Jedis jedis = pool.getResource();
        try {
            return jedis.exists(key);
        } finally {
            jedis.close();
        }
    }

}
您的应用程序上下文将没有内部bean

<bean id="redisOnlineManager" class="com.app.online.RedisOnlineManager/><!-- you dont need this in the application context if you are using annotations -->

您是否在询问exists()方法是否是线程安全的?是你放在上面的类,是RedisOnlineManager吗?是的,代码来自我的RedisOnlineManager,我试图问我上面实现jedis池的代码是不是线程安全的方式,根据,它说“你可以静态地将池存储在某个地方,它是线程安全的。”我需要创建一个静态类吗?我怎么做?
<bean id="redisOnlineManager" class="com.app.online.RedisOnlineManager/><!-- you dont need this in the application context if you are using annotations -->