java操作Redis
java操作Redis需要redis的一个java客户端jedis。
jedis是客户端,而reids是服务器。使用jedis这个java客户端操作redis数据库。
Jedis简单操作
简单配置
使用jedis 客户端,完成jedis简单操作
//完成添加数据
@Test
public void testSet() throws Exception{
//获取连接
Jedis jedis = new Jedis("127.0.0.1");
//添加数据
jedis.set("name","Tom");
//关闭连接
jedis.close();
}
//完成获取数据
@Test
public void testGet() throws Exception{
//获取连接
Jedis jedis = new Jedis("127.0.0.1");
//执行操作
System.out.println(jedis.get("name"));
//关闭连接
jedis.close();
}
连接池配置
通过jedis连接池,简单操作redis数据库
/**
* 使用连接池简单访问redis
* 1. 创建连接池配置对象
* 2. 配置
* 忙时最大连接数
* 闲时最大连接数
* 最大等待时间
* 获取连接时检查配置
* 3.通过连接池配置对象创建连接池
* 4.通过连接池获取连接
* 5.执行操作
* 6.关闭连接、销毁连接池
*/
@Test
public void testGet() throws Exception{
//连接池配置对象
JedisPoolConfig poolConfig = new JedisPoolConfig();
//配置
poolConfig.setMaxTotal(20);
poolConfig.setMaxIdle(5);
poolConfig.setMaxWaitMillis(2*1000);
poolConfig.setTestOnBorrow(true);
//获取连接池
JedisPool jedisPool = new JedisPool(poolConfig,"127.0.0.1");
//获取连接
Jedis jedis = jedisPool.getResource();
//添加数据
jedis.set("age","18");
//获取数据
System.out.println(jedis.get("age"));
//关闭连接、销毁连接池
jedis.close();
jedisPool.destroy();
}
Jedis数据结构操作
使用jedis来操作redis的key和value,而value有很多种类型,和命令操作一样。
Key操作
String操作
List操作
Set操作
Hash操作
Jedis排序
//sort排序 数字,不用加sortingParams ,字母需要加,并且是指assii值排序
System.out.println("对list nums进行排序后的值:"+jedis.sort("nums"));
System.out.println("nums原始值:"+jedis.lrange("nums",0,-1));
SortingParams sortingParameters = new SortingParams();
//使用assii码进行排序
sortingParameters.alpha();
System.out.println(对list langues进行排序后的值:"+jedis.sort("langues",sortingParameters));
Jedis事务
@Test
public void transationTest() throws Exception{
//清楚数据库
jedis.flushDB();
jedis.set("name","zs");
jedis.set("age","18");
System.out.println("获取name、age的值:"+jedis.mget("name","age"));
//开启事务
Transation multi = jedis.multi();
multi.incr("name");
multi.incr("age");
//提交事务
List<Object> exec = multi.exec();
System.out.println(exec);
System.out.println("获取name、age的值:"+jedis.mget("name","age"));
//关闭连接、销毁连接池
jedis.close();
jedisPool.destroy();
}