依赖
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.0.0</version>
</dependency>
Jedis公共类
package com.tu.redis;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class RedisUtil {
private static Jedis jedis;//非切片客户端连接
private static JedisPool jedisPool;//非切片连接池
/**
* 初始化非切片池
*/
private static void initialPool() {
//池基本配置
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxActive(20);
config.setMaxIdle(5);
config.setMaxWait(100001);
config.setTestOnBorrow(false);
jedisPool = new JedisPool(config, "192.168.142.156", 6379);
}
public static Jedis getJedisInstance() {
if (jedis == null) {
initialPool();
return jedisPool.getResource();
} else {
return jedis;
}
}
}
使用
package com.tu.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import com.tu.redis.RedisUtil;
@Controller
@RequestMapping("/test")
public class HelloworldController{
@RequestMapping("/hello")
public ModelAndView sayHello(ModelMap model) {
String username = RedisUtil.getJedisInstance().get("myname");
model.addAttribute("message", "Hello World, I'm "+username+".");
return new ModelAndView("hello");
}
@RequestMapping("/change")
public ModelAndView changeName(ModelMap model,@RequestParam("name") String name) {
RedisUtil.getJedisInstance().set("myname", name);
String username = RedisUtil.getJedisInstance().get("myname");
model.addAttribute("message", "Hello World, I'm "+username+".");
return new ModelAndView("hello");
}
}
如果是集群
private static ShardedJedisPool pool;
static {
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(100);
config.setMaxIdle(50);
config.setMaxWaitMillis(3000);
config.setTestOnBorrow(true);
config.setTestOnReturn(true);
// 集群
JedisShardInfo jedisShardInfo1 = new JedisShardInfo("120.26.1.1", 6379);
jedisShardInfo1.setPassword("123456888888");
List<JedisShardInfo> list = new LinkedList<JedisShardInfo>();
list.add(jedisShardInfo1);
pool = new ShardedJedisPool(config, list);
}