Java操作Redis工具类
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工具类的更多相关文章
- java的redis工具类
package com.mracale.sell.utils; /** * @Auther: Mracale */ import org.springframework.beans.factory.a ...
- Jedis 操作 Redis 工具类
配置类 pom.xml pom.xml 里配置依赖 <dependency> <groupId>redis.clients</groupId> <artifa ...
- Java操作Excel工具类(poi)
分享一个自己做的poi工具类,写不是很完全,足够我自己当前使用,有兴趣的可以自行扩展 1 import org.apache.commons.lang3.exception.ExceptionUtil ...
- java操作excel 工具类
java操作excel 可参考https://blog.csdn.net/xunwei0303/article/details/53213130 直接上代码: 一.java生成excel文件: pac ...
- Java操作FTP工具类(实例详解)
这里使用Apache的FTP jar 包 没有使用Java自带的FTPjar包 工具类 package com.zit.ftp; import java.io.File; import java.i ...
- java操作mongodb工具类
新建maven项目 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht ...
- java操作svn工具类SvnUtil
直接上代码,工作中使用的版本,记录下. public class SvnUtil { private static Logger logger = Logger.getLogger(SvnUtil.c ...
- JAVA 操作Excel工具类
Bean转Excel对象 /* * 文件名:BeanToExcel.java */ import java.util.ArrayList; import java.util.List; import ...
- Redis操作Set工具类封装,Java Redis Set命令封装
Redis操作Set工具类封装,Java Redis Set命令封装 >>>>>>>>>>>>>>>>& ...
随机推荐
- Java基础--常用API--java.lang.Object
一.简述 1.Object类是所有类的父类,即直接或间接的继承java.lang.Object类.省略了extends Object. 2.方法 (1)protected native Object ...
- PAT天梯赛L3-004 肿瘤诊断
题目链接:点击打开链接 在诊断肿瘤疾病时,计算肿瘤体积是很重要的一环.给定病灶扫描切片中标注出的疑似肿瘤区域,请你计算肿瘤的体积. 输入格式: 输入第一行给出4个正整数:M.N.L.T,其中M和N是每 ...
- java 正则简单使用
查找是否包含字串 查询是否包含 #{name} 片段 这里有包含所以返回true String context = "select * from t_user where (name = # ...
- angularJS处理table中checkbox的选中状态
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 插入po得到主键,插入sql得到主键
import com.yd.common.data.CIPPageInfo; import com.yd.common.data.CIPReqCondition; import com.yd.comm ...
- Win7 桌面图标消失
win7 桌面图标消失或任务栏也消失,可以按Ctrl+Shift+Esc键调出任务管理器,然后点击文件——新建任务,输入explorer.
- eclipse自动添加版权信息
Preference->Java->Code Style->Code Template->comments->Files->Edit 勾选上Automaticall ...
- D. Little Artem and Dance
题目链接:http://codeforces.com/problemset/problem/669/D D. Little Artem and Dance time limit per test 2 ...
- C# 枚举与switch用法
using System; namespace Csharp { class Program { //枚举 public enum TimeOfDay { Morning=, Afternoon=, ...
- Storm概念学习系列之事务
不多说,直接上干货! 事务 这里的事务是专门针对Topology提出来的,是为了解决元组在处理失败重新发送后的一系列问题的.简而言之,事务拓扑(transactional topology)就是指St ...