Redis连接池工具类(RedisUtil )

这是一个Java实现的Redis连接池工具类RedisUtil,它配置了Redis服务器的IP、端口、密码以及连接池参数,如最大连接数、最大空闲连接数和等待时间。该类提供获取和释放Jedis实例的方法,确保资源的有效管理和释放。
摘要由CSDN通过智能技术生成
package com.framestudy.java_redis;


import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;


/**
 * Redis连接池工具类
 * @author Administrator
 *
 */
public final class RedisUtil {
    
    //Redis服务器IP
    private static String ADDR = "192.168.28.232";
    
    //Redis的端口号
    private static int PORT = 6379;
    
    //访问密码
    private static String AUTH = "123456";
    
    //可用连接实例的最大数目,默认值为8;
    //如果赋值为-1,则表示不限制;如果pool已经分配了maxActive个jedis实例,则此时pool的状态为exhausted(耗尽)。
    private static int MAX_ACTIVE = 1024;
    
    //控制一个pool最多有多少个状态为idle(空闲的)的jedis实例,默认值也是8。
    private static int MAX_IDLE = 200;
    
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
RedisTemplate是Spring框架提供的一个Redis操作工具类,封装了Redis连接池的操作。在使用Redis的时候,可以通过RedisTemplate对Redis进行操作,包括String、Hash、List、Set、ZSet、HyperLogLog等数据结构的操作。 在使用RedisTemplate进行geo操作时,需要先设置序列化方式为GenericJackson2JsonRedisSerializer,然后通过GeoOperations接口进行操作。GeoOperations包括添加地理位置信息、获取两个位置之间的距离、获取指定位置的附近的其他位置信息等操作。 以下是RedisTemplate工具类的示例代码: ``` @Configuration public class RedisConfig { @Bean public RedisTemplate<String, Object> redisTemplate(LettuceConnectionFactory lettuceConnectionFactory) { RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>(); redisTemplate.setConnectionFactory(lettuceConnectionFactory); redisTemplate.setKeySerializer(new StringRedisSerializer()); redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer()); redisTemplate.setHashKeySerializer(new StringRedisSerializer()); redisTemplate.setHashValueSerializer(new GenericJackson2JsonRedisSerializer()); return redisTemplate; } } @Service public class RedisGeoService { @Autowired private RedisTemplate<String, Object> redisTemplate; public Object addGeo(String key, GeoLocation<Object> location) { GeoOperations<String, Object> geoOperations = redisTemplate.opsForGeo(); return geoOperations.add(key, location); } public Object getDistance(String key, Object member1, Object member2) { GeoOperations<String, Object> geoOperations = redisTemplate.opsForGeo(); return geoOperations.distance(key, member1, member2); } public Object getRadius(String key, Object member, double radius, Metric metric) { GeoOperations<String, Object> geoOperations = redisTemplate.opsForGeo(); return geoOperations.radius(key, member, new Distance(radius, metric)); } } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值