使用Java连接Redis进行操作 朴灿烈づ我的快乐病毒、 2023-01-11 09:25 186阅读 0赞 # 使用Java连接Redis进行操作 # ## 一、pom依赖 ## <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> <version>2.8.0</version> </dependency ## 二、使用池化技术连接Redis(高并发情况下) ## package com.redis; import org.apache.commons.pool2.impl.GenericObjectPoolConfig; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; public class JedisPoolExercise { public static void main(String[] args) { //JedisPool: 保存jedis连接的连接池 //连接池通用的一些设置 GenericObjectPoolConfig poolconf = new GenericObjectPoolConfig(); //设置连接池的属性 //设置连接池最多创建200个jedis连接 poolconf.setMaxTotal(200); //设置池中最多保留30个空闲的jedis连接 poolconf.setMinIdle(30); //当池中没有多余的连接时,客户端最多等多久 poolconf.setMaxWaitMillis(30000); //当连接用完时,是否阻塞客户端直到超时。false代表连接耗尽,直接给客户端抛异常 poolconf.setBlockWhenExhausted(true); //从池中借一个连接时,先测试一下连接是否正常 poolconf.setTestOnBorrow(true); //创建一个连接池 JedisPool jedispool = new JedisPool(poolconf, "hadoop102", 6379, 60000); //从池中获取一个连接 Jedis jedis = jedispool.getResource(); //使用 System.out.println(jedis.ping()); //将连接放回连接池 jedis.close(); } } ## 三、连接有哨兵模式的Redis集群 ## package com.redis; import org.apache.commons.pool2.impl.GenericObjectPoolConfig; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPoolConfig; import redis.clients.jedis.JedisSentinelPool; import java.util.HashSet; import java.util.Set; public class JedisSentinePoll { public static void main(String[] args) { //连接池通用的一些设置 GenericObjectPoolConfig poolconf = new JedisPoolConfig(); //设置连接池的属性 //设置连接池最多创建200个jedis连接 poolconf.setMaxTotal(200); //设置池中最多保留30个空闲的jedis连接 poolconf.setMinIdle(30); //当池中没有多余的连接时,客户端最多等多久 poolconf.setMaxWaitMillis(30000); //当连接用完时,是否阻塞客户端直到超时。false代表连接耗尽,直接给客户端抛异常 poolconf.setBlockWhenExhausted(true); //从池中借一个连接时,先测试一下连接是否正常 poolconf.setTestOnBorrow(true); //保存哨兵信息 Set<String> sentinels = new HashSet<String>(); //添加哨兵的信息 sentinels.add("hadoop102:26379"); JedisSentinelPool mymast = new JedisSentinelPool("mymast", sentinels, poolconf); Jedis jedis = mymast.getResource(); jedis.set("session","jedis"); System.out.println(jedis.get("session")); jedis.close(); } } ## 四、连接Redis集群 ## package com.redis; import org.apache.commons.pool2.impl.GenericObjectPoolConfig; import redis.clients.jedis.HostAndPort; import redis.clients.jedis.JedisCluster; import redis.clients.jedis.JedisPoolConfig; import java.io.IOException; import java.util.HashSet; import java.util.Set; public class JedisClusterExercise { public static void main(String[] args) throws IOException { //连接池通用的一些设置 GenericObjectPoolConfig poolconf = new JedisPoolConfig(); //设置连接池的属性 //设置连接池最多创建200个jedis连接 poolconf.setMaxTotal(200); //设置池中最多保留30个空闲的jedis连接 poolconf.setMinIdle(30); //当池中没有多余的连接时,客户端最多等多久 poolconf.setMaxWaitMillis(30000); //当连接用完时,是否阻塞客户端直到超时。false代表连接耗尽,直接给客户端抛异常 poolconf.setBlockWhenExhausted(true); //从池中借一个连接时,先测试一下连接是否正常 poolconf.setTestOnBorrow(true); Set<HostAndPort> nodes = new HashSet<HostAndPort>(); nodes.add(new HostAndPort("hadoop102",6379)); nodes.add(new HostAndPort("hadoop102",6380)); nodes.add(new HostAndPort("hadoop102",6381)); //JedisCluster 代表从集群中获取一个连接,可以直接使用jedisCluster调用API JedisCluster jedisCluster = new JedisCluster(nodes, 60000, poolconf); jedisCluster.mset("{a}a1","a1","{a}a2","a2","{a}a3","a3"); System.out.println(jedisCluster.mget("{a}a1", "{a}a2", "{a}a3")); jedisCluster.close(); } }
相关 使用Java进行数据库连接与操作常见问题 在使用Java进行数据库连接与操作时,可能会遇到以下一些常见的问题: 1. **数据库驱动的选择**:Java中用于数据库连接的API有JDBC和JPA。选择哪种主要取决于你 朴灿烈づ我的快乐病毒、/ 2024年09月10日 22:06/ 0 赞/ 100 阅读
相关 【服务器】Java连接redis及使用Java操作redis、使用场景 一、Java连接redis-No-SQL 1、导入依赖 > 在你的项目里面导入redis的pom依赖 > > <dependency> > 蔚落/ 2024年02月20日 13:06/ 0 赞/ 51 阅读
相关 【服务器】Java连接redis及使用Java操作redis、使用场景 一、Java连接[redis][]\-No-SQL 1、导入依赖 > 在你的项目里面导入redis的pom依赖 > > <dependency> > 深碍√TFBOYSˉ_/ 2024年02月19日 08:45/ 0 赞/ 48 阅读
相关 Java中使用Jedis连接Redis对String进行操作的常用命令 场景 Centos中Redis的下载编译与安装(超详细): [https://blog.csdn.net/BADAO\_LIUMANG\_QIZHI/article/d た 入场券/ 2023年10月07日 11:16/ 0 赞/ 30 阅读
相关 Java中使用Jedis连接Redis对Key进行操作的常用命令 场景 Java中使用Jedis连接池连接Redis数据库流程: [https://blog.csdn.net/BADAO\_LIUMANG\_QIZHI/article 港控/mmm°/ 2023年10月07日 11:14/ 0 赞/ 31 阅读
相关 使用Java连接Redis进行操作 使用Java连接Redis进行操作 一、pom依赖 <dependency> <groupId>redis.clients</groupId 朴灿烈づ我的快乐病毒、/ 2023年01月11日 09:25/ 0 赞/ 187 阅读
相关 使用spring-data-redis对redis进行操作 前面介绍了Redis的安装配置,今天我将介绍通过spring-data-redis实现java程序对redis进行操作。对于redis的介绍我就不细说,在我们写程序的时候就是要 布满荆棘的人生/ 2022年05月09日 08:40/ 0 赞/ 227 阅读
相关 使用StringRedisTemplate进行redis连接操作 1,引入jar,需要jar有三个,如下 <dependency> <groupId>org.springframework.data</gro 客官°小女子只卖身不卖艺/ 2022年02月21日 07:39/ 0 赞/ 673 阅读
相关 使用StringRedisTemplate进行redis连接操作 1. 引入jar,需要jar有三个,如下 <dependency> <groupId>org.springframework.data</g 小灰灰/ 2022年01月14日 23:51/ 0 赞/ 794 阅读
还没有评论,来说两句吧...