Jedis
导入依赖
<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
创建一个测试类 名称为TestJedis
package com.wn.jedis01.jedis;
import org.junit.Before;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class TestJedis {
private Jedis jedis;
@Before
public void before(){
//连接服务器
jedis=new Jedis("192.168.138.76",6379);
//权限认证
//jedis.auth("wang2003");
System.out.println(jedis.ping());
}
//String类型(字符串)
@Test
public void TestString(){
//添加数据
//jedis.set("k1","v1");
//查询数据
//String k1 = jedis.get("k1");
//System.out.println(k1);
//返回所储存的字符串的长度
//Long k1 = jedis.strlen("k1");
//System.out.println(k1);
//key中储存的数据值加1
//jedis.set("1","2");
//Long incr = jedis.incr("1");
//System.out.println(incr);
//key中储存的数据值减1
//Long decr = jedis.decr("1");
//System.out.println(decr);
}
//List类型(列表)
@Test
public void TestList(){
//将一个或多个值插入到列表的头部 从左侧开始
//jedis.lpush("List01","张三","李四","王五");
//在列表中添加一个或多个值 从右侧开始
//jedis.rpush("List02","北京","上海","广州");
//查看一个或多个值
List<String> list01 = jedis.lrange("List01", 0, -1);
for (String tring:list01){
System.out.println(tring);
}
//获取列表的长度
Long list011 = jedis.llen("List01");
System.out.println(list011);
//通过索引设置列表元素的值
jedis.lset("List01",0,"赵六");
}
//set类型(无序集合)
@Test
public void TestSet(){
//向集合中添加一个或多个成员
//jedis.sadd("Set01","456","789");
//返回集合中的所有成员
Set<String> set01 = jedis.smembers("Set01");
for (String string:set01){
System.out.println(string);
}
//获取集合中的数量
Long set011 = jedis.scard("Set01");
System.out.println(set011);
//删除集合中指定的value元素
//jedis.srem("Set01","789");
}
//hash类型(哈希)
@Test
public void TestHash(){
//将哈希key中的字段fileld的值设为value 添加
//jedis.hset("Hash01","h1","北京");
//jedis.hset("Hash01","h2","上海");
//获取储存哈希表中指定字段的值
//String hget = jedis.hget("Hash01", "h1");
//System.out.println(hget);
//查询多个值
//List<String> hmget = jedis.hmget("Hash01", "h1", "h2");
//System.out.println(hmget);
//获取key中对应的值
//Map<String, String> hash01 = jedis.hgetAll("Hash01");
//System.out.println(hash01);
//删除一个或多个哈希表中指定字段
jedis.hdel("Hash01","h2");
//获取表中的字段
Set<String> hash01 = jedis.hkeys("Hash01");
System.out.println(hash01);
//获取表中所有值
List<String> hash011 = jedis.hvals("Hash01");
System.out.println(hash011);
}
//Zset类型(有序集合)
@Test
public void TestZset(){
//添加一个或多个成员
//jedis.zadd("Zset01",1,"123");
//通过索引区间返回有序集合成指定区间的成员
Set<String> zset01 = jedis.zrange("Zset01", 0, -1);
System.out.println(zset01);
//获取有序集合中的成员数
Long zset011 = jedis.zcard("Zset01");
System.out.println(zset011);
}
}
Stringboot集成Jedis
导入依赖
<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
application.properties文件
spring.redis.database=0
spring.redis.host=192.168.138.76
spring.redis.port=6379
#spring.redis.password=123456
创建一个类 名称为TestRedis
package com.wn.jedis01.service;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import java.util.Set;
@Service
public class TestRedis {
@Resource
private StringRedisTemplate stringRedisTemplate;
public void set(String key,Object value){
if (value instanceof String){ //判断是否是String类型
stringRedisTemplate.opsForValue().set(key,(String)value);
}else if(value instanceof List){ //判断是否是List类型
List<String> list=(List)value;
for (String item:list){
stringRedisTemplate.opsForList().leftPush(key,item);
}
}else if (value instanceof Set){ //潘富案是否是Set类型
String[] objects = (String[]) ((Set) value).toArray(new String[((Set) value).size()]);
stringRedisTemplate.opsForSet().add(key,objects);
}else if(value instanceof Map){ //判断是否是Map类型
stringRedisTemplate.opsForHash().putAll(key,(Map<?, ?>) value);
}
}
}
创建controller层
package com.wn.jedis01.controller;
import com.wn.jedis01.service.TestRedis;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import java.util.*;
@Controller
public class RedisController {
@Resource
private TestRedis testRedis;
@RequestMapping("/String")
@ResponseBody
public String TestString(){
testRedis.set("k1","v1");
return "success";
}
@RequestMapping("/List")
@ResponseBody
public String TestList(){
List<String> list=new ArrayList<>();
list.add("张三");
list.add("李四");
testRedis.set("List01",list);
return "success";
}
@RequestMapping("/Set")
@ResponseBody
public String TestSet(){
Set<String> set=new HashSet<>();
set.add("123");
set.add("456");
testRedis.set("Set01",set);
return "success";
}
@RequestMapping("/Map")
@ResponseBody
public String TestMap(){
Map map=new HashMap();
map.put("name","张三");
map.put("age","18");
testRedis.set("Map01",map);
return "success";
}
}