
Maven必须配置
redis.clients jedis2.9.0 junit junit4.12 test org.testng testng6.14.3 test org.apache.maven.plugins maven-compiler-plugin3.0 1.8 1.8 UTF-8
Java实现
package cn.itcast.redis.api_test;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import java.util.List;
import java.util.Set;
public class RedisTest {
// redis连接池
private JedisPool jedisPool;
@BeforeTest
public void beforeTest(){
// 创建Redis池配置对象JedisPoolConfig
JedisPoolConfig config = new JedisPoolConfig();
// 设置最大空闲连接数
config.setMaxIdle(10);
// 设置最小空闲连接
config.setMinIdle(5);
// 设置最大等待时间(毫秒)
config.setMaxWaitMillis(3000);
// 设置最大连接数
config.setMaxTotal(50);
// 创建Redis池对象JedisPool
jedisPool = new JedisPool(config, "node1");
}
@Test
public void stringTest(){
// 获取一个redis连接
Jedis jedis = jedisPool.getResource();
// 添加一个String数据类型,key为pv,值为0
jedis.set("pv", "0");
// 查询改key对应的数据
System.out.println("pv: " + jedis.get("pv"));
// 修改pv为1000
jedis.set("pv", "1000");
// 实现整型数据原子自增 *** 作+1
jedis.incr("pv");
// 实现整型数据原子自增 *** 作+1000
jedis.incrBy("pv", 1000);
System.out.println(jedis.get("pv"));
// 归还连接池中
jedis.close();
}
@Test
public void hashTest(){
// 获取redis连接
Jedis jedis = jedisPool.getResource();
// 用Hash类型创建商品和库存数据
jedis.hset("goods", "iphone", "10000");
jedis.hset("goods", "redmi", "20000");
// 获取Hash中所有商品
Set goodsSet = jedis.hkeys("goods");
for (String goods : goodsSet) System.out.println(goods);
// 新增3000个redmi库存
jedis.hincrBy("goods", "redmi", 3000);
// 删除整个Hash
jedis.del("goods");
// 归还链接
jedis.close();
}
@Test
public void listTest(){
// 获取redis连接
Jedis jedis = jedisPool.getResource();
// 向List中插入三个手机号
jedis.lpush("phone", "11111111111", "22222222222", "33333333333");
// 从右边移除一个手机号
jedis.rpop("phone");
// 获取所有的值
List phoneList = jedis.lrange("phone", 0, -1);
for (String phone : phoneList) {
System.out.println(phone);
}
// 归还连接
jedis.close();
}
@Test
public void setTest(){
// 获取连接
Jedis jedis = jedisPool.getResource();
// 往set中添加页面page1的uv(独立用户不重复),用户user1访问一次该页面
jedis.sadd("uv", "user1");
// user2 访问了一次
jedis.sadd("uv", "user2");
// user1 再次访问
jedis.sadd("uv", "user1");
// 获取page1的pv值
System.out.println("uv:" + jedis.scard("uv"));
// 归还连接
jedis.close();
}
@AfterTest
public void afterTest(){
// 关闭连接池
jedisPool.close();
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)