redis.properties 配置文件
redis.maxTotal=1
redis.maxIdel=1
redis.mzxWaitMillis=1000
redis.hostAndPort=192.168.176.128:6379,192.168.176.129:6379
实现demo
package main.scala.com.web.zhangyong168.cn.spark.core.util
import java.util
import java.util.Properties
import scala.collection.JavaConversions._
import com.web.zhangyong168.cn.spark.util.PropertiesUtils
import redis.clients.jedis.{HostAndPort, JedisCluster, JedisPoolConfig}
import scala.collection.mutable
/**
*
- @version 1.0.0
- @Author zhangyong
- @Description //TODO 连接redis集群
- @Date 2020/06/15 16:40
**/
object RedisCluster {
val pro: Properties = PropertiesUtils.loadProps("redis.properties")
private val poolConf = new JedisPoolConfig
poolConf.setMaxTotal(pro.get("redis.maxTotal").toString.toInt)
poolConf.setMaxIdle(pro.get("redis.maxIdel").toString.toInt)
poolConf.setMaxWaitMillis(pro.get("redis.mzxWaitMillis").toString.toInt)
private val nodes = new util.LinkedHashSetHostAndPort
val hostAndPorts = pro.get("hostAndPort").toString.split(",")
for (hostAndPort <- hostAndPorts) {
val hp = hostAndPort.split("\😊
nodes.add(new HostAndPort(hp(0), hp(1).toInt))
}
def getRedisCluster: JedisCluster = {
new JedisCluster(nodes, poolConf)
}
def main(args: Array[String]): Unit = {
val jedis = getRedisCluster
val map: mutable.HashMap[String, String] = mutable.HashMapString, String
map.put("colname1","value1")
map.put("colname2","value2")
map.put("colname3","value3")
//key值为库名:表名
jedis.hset("Db:Table:id", "name", "daniel")
jedis.hmset("db:tb:id值",map) //传map为了避免每调redis
val value = jedis.hget("Db:Table:id", "name")
println(value)
}
}