Redis安装步骤可参考:

https://www.cnblogs.com/jonban/p/9217221.html

依赖 jar 包

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

RedisUtils.java

package javax.utils;

import java.util.ArrayList;
import java.util.List; import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.JedisShardInfo;
import redis.clients.jedis.ShardedJedis;
import redis.clients.jedis.ShardedJedisPool; /**
* Redis工具类
*
* @author Logan
* @version 1.0.0
*/
public class RedisUtils { private static ShardedJedisPool jedisPool = null; static {
JedisPoolConfig jedisPoolConfig = new JedisPoolConfig(); // 设置最大对象数
jedisPoolConfig.setMaxTotal(20); // 最大能够保持空闲状态的对象数
jedisPoolConfig.setMaxIdle(10); // 超时时间
jedisPoolConfig.setMaxWaitMillis(10000); // 在获取连接的时候检查有效性, 默认false
jedisPoolConfig.setTestOnBorrow(true); // 在返回Object时, 对返回的connection进行validateObject校验
jedisPoolConfig.setTestOnReturn(true); // 如果是集群,可以全部加入list中
List<JedisShardInfo> shardInfos = new ArrayList<JedisShardInfo>();
JedisShardInfo shardInfo = new JedisShardInfo("192.168.32.10", 6379);
shardInfo.setPassword("redis123.");
shardInfos.add(shardInfo); jedisPool = new ShardedJedisPool(jedisPoolConfig, shardInfos); } /**
* 从连接池中获取一个ShardedJedis对象
*/
public static ShardedJedis getJedis() {
return jedisPool.getResource();
} /**
* 关闭ShardedJedis对象,放回池中
*/
public static void closeJedis(ShardedJedis jedis) {
jedis.close();
} /**
* 通过key获取String类型Value
*
* @param key 键
* @return 值
*/
public static String get(String key) {
try (
ShardedJedis jedis = jedisPool.getResource();
) { return jedis.get(key);
}
} /**
* 通过key获取字节数组类型Value
*
* @param key 键
* @return 值
*/
public static byte[] get(byte[] key) {
try (
ShardedJedis jedis = jedisPool.getResource();
) { return jedis.get(key);
}
} /**
* 设置String类型key和value
*
* @param key 键
* @param value 值
* @return
*/
public static String set(String key, String value) {
try (
ShardedJedis jedis = jedisPool.getResource();
) { return jedis.set(key, value);
} } /**
* 设置字节数组类型key和value
*
* @param key 键
* @param value 值
* @return
*/
public static String set(byte[] key, byte[] value) {
try (
ShardedJedis jedis = jedisPool.getResource();
) { return jedis.set(key, value);
} } /**
* 删除指定key
*/
public static Long del(String key) {
try (
ShardedJedis jedis = jedisPool.getResource();
) {
return jedis.del(key);
}
} /**
* 左侧放入集合
*
* @param key 键
* @param values 值集合
* @return
*/
public static Long lpush(String key, String... values) {
try (
ShardedJedis jedis = jedisPool.getResource();
) {
return jedis.lpush(key, values);
}
} /**
* 左侧弹出一个元素
*
* @param key 指定键
* @return 左侧第一个元素
*/
public static String lpop(String key) {
try (
ShardedJedis jedis = jedisPool.getResource();
) {
return jedis.lpop(key);
}
} /**
* 右侧放入集合
*
* @param key 键
* @param values 值集合
* @return
*/
public static Long rpush(String key, String... values) {
try (
ShardedJedis jedis = jedisPool.getResource();
) {
return jedis.rpush(key, values);
}
} /**
* 右侧弹出一个元素
*
* @param key 指定键
* @return 右侧第一个元素
*/
public static String rpop(String key) {
try (
ShardedJedis jedis = jedisPool.getResource();
) {
return jedis.rpop(key);
}
} }

Java操作Redis工具类.

Java操作Redis工具类的更多相关文章

  1. java的redis工具类

    package com.mracale.sell.utils; /** * @Auther: Mracale */ import org.springframework.beans.factory.a ...

  2. Jedis 操作 Redis 工具类

    配置类 pom.xml pom.xml 里配置依赖 <dependency> <groupId>redis.clients</groupId> <artifa ...

  3. Java操作Excel工具类(poi)

    分享一个自己做的poi工具类,写不是很完全,足够我自己当前使用,有兴趣的可以自行扩展 1 import org.apache.commons.lang3.exception.ExceptionUtil ...

  4. java操作excel 工具类

    java操作excel 可参考https://blog.csdn.net/xunwei0303/article/details/53213130 直接上代码: 一.java生成excel文件: pac ...

  5. Java操作FTP工具类(实例详解)

    这里使用Apache的FTP jar 包 没有使用Java自带的FTPjar包  工具类 package com.zit.ftp; import java.io.File; import java.i ...

  6. java操作mongodb工具类

    新建maven项目 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht ...

  7. java操作svn工具类SvnUtil

    直接上代码,工作中使用的版本,记录下. public class SvnUtil { private static Logger logger = Logger.getLogger(SvnUtil.c ...

  8. JAVA 操作Excel工具类

    Bean转Excel对象 /* * 文件名:BeanToExcel.java */ import java.util.ArrayList; import java.util.List; import ...

  9. Redis操作Set工具类封装,Java Redis Set命令封装

    Redis操作Set工具类封装,Java Redis Set命令封装 >>>>>>>>>>>>>>>>& ...

随机推荐

  1. 洛谷P3478 [POI2008]STA-Station

    P3478 [POI2008]STA-Station 题目描述 The first stage of train system reform (that has been described in t ...

  2. Hibernate的优化方案

    使用参数绑定 使用绑定参数的原因是让数据库一次解析SQL,对后续的重复请求可以使用生成好的执行计划,这样做节省CPU时间和内存. 避免SQL注入. 尽量少使用NOT 如果where子句中包含not关键 ...

  3. vue中v-bind绑定样式

    近来发现v-bind绑定样式的两个好玩的栗子 可以直接绑定到一个样式对象,让模板更清晰: <div id="app"> <div v-bind:style=&qu ...

  4. 利用git reflog找回错误的重置

    在开发中经常需要reset分支,如果在reset前没有记住分支指向的提交ID,想要重置回原来的提交恐怕大多数开发者是重新拉取远程版本库,再rebase分支.但如果连不上远程版本库或没有远程版本怎么办呢 ...

  5. 03.Spring IoC 容器 - 初始化

    基本概念 Spring IoC 容器的初始化过程在监听器 ContextLoaderListener 类中定义. 具体由该类的的 configureAndRefreshWebApplicationCo ...

  6. Java ping 主机 端口

    22:04:08.002 [main] INFO Ping - 目标地址 192.168.1.107 是否可到达:true 22:04:08.006 [main] INFO Ping - 执行命令 p ...

  7. cocos

    cocos compile -p android --android-studio --app-abi=armeabi-v7a ./adb kill-server&& ./adb se ...

  8. UVALive 4262——Trip Planning——————【Tarjan 求强连通分量个数】

    Road Networks Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submit Stat ...

  9. clipboard JS(剪切板)的使用

    引入js(根据路径需要修改url) <script src="lib/clipboard/clipboard.min.js" type="text/javascri ...

  10. JS for循环删除数组元素

    $(function(){ var aa = [1,1,2,3,3,4,4,5]; alert(aa); for (var i = aa.length-1;i >= 0 ;i--) { if ( ...