Java操作redis实现增删查改功能的方法示例
作者:zwcwu31 时间:2022-01-04 07:24:24
本文实例讲述了Java操作redis实现增删查改功能的方法。分享给大家供大家参考,具体如下:
首先,我们需要在windows下配置一个redis环境,具体配置教程请看:https://www.jb51.net/article/96230.htm
然后需要导入:jedis-2.7.3.jar这个包,看如下代码:
package redis.main;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public final class RedisPool {
//Redis服务器IP
private static String ADDR = "127.0.0.1";
//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;
//等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时。如果超过等待时间,则直接抛出JedisConnectionException;
private static int MAX_WAIT = 10000;
private static int TIMEOUT = 10000;
//在borrow一个jedis实例时,是否提前进行validate操作;如果为true,则得到的jedis实例均是可用的;
private static boolean TEST_ON_BORROW = true;
private static JedisPool jedisPool = null;
/**
* 初始化Redis连接池
*/
static {
try {
JedisPoolConfig config = new JedisPoolConfig();
//config.setMaxActive(MAX_ACTIVE);
config.setMaxTotal(MAX_ACTIVE);
config.setMaxIdle(MAX_IDLE);
config.setMaxWaitMillis(MAX_WAIT);
config.setTestOnBorrow(TEST_ON_BORROW);
jedisPool = new JedisPool(config, ADDR, PORT, TIMEOUT, AUTH);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 获取Jedis实例
* @return
*/
public synchronized static Jedis getJedis() {
try {
if (jedisPool != null) {
Jedis resource = jedisPool.getResource();
return resource;
} else {
return null;
}
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
/**
* 释放jedis资源
* @param jedis
*/
public static void returnResource(final Jedis jedis) {
if (jedis != null) {
jedisPool.close();
}
}
}
下面是main函数:
package redis.main;
import java.util.Set;
import redis.clients.jedis.Jedis;
/**
* Hello world!
*
*/
public class App
{
public static void main( String[] args )
{
insert("username", "xiaoming1");
System.out.println(get("username"));
delete("username");
System.out.println(get("username"));
}
static void insert(String key, String value){
Jedis jedis = RedisPool.getJedis();
jedis.set(key, value);
}
static void delete(String key){
Jedis jedis = RedisPool.getJedis();
jedis.del(key);
}
static String get(String key){
Jedis jedis = RedisPool.getJedis();
return jedis.get(key);
}
}
附:完整实例代码点击此处本站下载。
希望本文所述对大家java程序设计有所帮助。
来源:http://blog.csdn.net/zwc2xm/article/details/72870119
标签:Java,redis
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
基于WebClient实现Http协议的Post与Get对网站进行模拟登陆和浏览实例
2022-06-24 08:07:48
Android客户端程序Gradle如何打包
2023-06-05 14:10:07
解析C#拼接Json串的几种方法
2021-12-28 20:22:48
![](https://img.aspxhome.com/file/2023/7/94547_0s.png)
JAVA包装类及自动封包解包实例代码
2022-10-23 13:28:54
Mybatis-Plus自动填充更新操作相关字段的实现
2022-01-14 20:43:01
Java运行时数据区概述详解
2023-10-08 07:00:10
![](https://img.aspxhome.com/file/2023/0/69130_0s.png)
Intellij搭建springmvc常见问题解决方案
2023-07-23 12:53:29
![](https://img.aspxhome.com/file/2023/9/57419_0s.png)
学习使用Material Design控件(一)
2023-07-27 13:14:06
![](https://img.aspxhome.com/file/2023/3/84743_0s.jpg)
Mybatis 入参类型方式全面详解
2023-10-16 20:03:40
C#实现在前端网页弹出警告对话框(alert)的方法
2022-02-17 11:05:12
C#基于UDP进行异步通信的方法
2022-03-20 18:23:55
解决RestTemplate 请求url中包含百分号 会被转义成25的问题
2022-11-01 22:59:51
C#实现无损压缩图片的示例详解
2023-04-29 21:07:26
![](https://img.aspxhome.com/file/2023/2/84442_0s.png)
Java的Socket网络编程基础知识入门教程
2021-11-19 10:10:37
详解Spring Cloud负载均衡重要组件Ribbon中重要类的用法
2023-07-06 02:54:01
简单的理解java集合中的HashSet和HashTree几个重写方法
2022-10-23 15:16:36
Java+Selenium调用JavaScript的方法详解
2021-05-26 17:08:24
![](https://img.aspxhome.com/file/2023/0/83070_0s.gif)
Spingboot JPA CriteriaBuilder 如何获取指定字段
2022-07-20 15:40:22
c# WPF实现Windows资源管理器(附源码)
2022-10-01 14:34:46
![](https://img.aspxhome.com/file/2023/3/83313_0s.png)
C# 根据字符串生成二维码的实例代码
2023-09-16 09:06:50
![](https://img.aspxhome.com/file/2023/4/79084_0s.png)