IDEA整合Jedis(包含Jedis连接池)

本文介绍了如何在Java中通过POM引入Jedis库,建立到Redis服务器的连接,执行字符串和哈希操作,并展示了连接池的配置和使用,以提高性能并管理资源。
摘要由CSDN通过智能技术生成

官网地址:https://github.com/redis/jedis

1.引入pom文件

 <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
        <version>3.7.0</version>
    </dependency>

2.建立连接

@BeforeEach
    void setUp() {
        jedis = new Jedis("192.168.00.000",6379);//虚拟机地址
        jedis.auth("000000");//密码
        jedis.select(0);//选择库
    }

3.测试

引入pom

    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter</artifactId>
        <version>5.7.2</version>
        <scope>test</scope>
    </dependency>

测试string

    @Test
    void testString(){
        String result = jedis.set("name", "CC");
        System.out.println("result = " + result);
        //获取数据
        String name = jedis.get("name");
        System.out.println("name = "+ name);
    }

4.释放资源

 @AfterEach
    void tearDown(){
        if(jedis != null){
            jedis.close();
        }
    }

整体代码

public class JedisTest {
    private Jedis jedis;

    @BeforeEach
    void setUp() {
        jedis = new Jedis("192.168.00.000",6379);
        jedis.auth("000000");
        jedis.select(0);
    }

    @Test
    void testString(){
        String result = jedis.set("name", "CC");
        System.out.println("result = " + result);
        //获取数据
        String name = jedis.get("name");
        System.out.println("name = "+ name);
    }
    @Test
    void testHash(){
        //插入hash数据
        jedis.hset("user:1","name","Jack");
        jedis.hset("user:1","age","21");
        // 获取
        Map<String, String> map = jedis.hgetAll("user:1");
        System.out.println(map);

    }


    @AfterEach
    void tearDown(){
        if(jedis != null){
            jedis.close();
        }
    }

}

如果遇到redis连接问题可以参考文章

Redis无法远程连接-CSDN博客

Jedis连接池

Jedis本身是线程不安全的,并且频繁的创建和销毁连接会有性能损耗,因此推荐使用Jedis连接池代替Jedis的直连方式

配置连接池

public class JedisConnectionFactory {
    private static final JedisPool jedisPool;

    static {
        //配置连接池
        JedisPoolConfig poolConfig = new JedisPoolConfig();
        poolConfig.setMaxTotal(8);
        poolConfig.setMaxIdle(8);
        poolConfig.setMinIdle(0);
        poolConfig.setMaxWaitMillis(1000);

        //创建连接池对象
        jedisPool = new JedisPool(poolConfig,
                "192.168.00.000",6379,1000,"000000");
    }

    public static Jedis getJedis(){
        return jedisPool.getResource();
    }

测试:

   @BeforeEach
    void setUp() {
        //jedis = new Jedis("192.168.00.000",6379);
        jedis = JedisConnectionFactory.getJedis();
    }
    @Test
    void testString(){
        String result = jedis.set("name", "CC");
        System.out.println("result = " + result);
        //获取数据
        String name = jedis.get("name");
        System.out.println("name = "+ name);
    }

连接池释放资源为归还

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值