2.再导入一个配置类用于客户端初始化org.redisson redisson3.13.6
@Configuration
public class RedissonConfig {
//创建客户端
@Bean
public RedissonClient redissonClient(){
Config config = new Config();
config.useSingleServer().setAddress("redis://127.0.0.1:6379").setPassword("123456");
return Redisson.create(config);
}
3.用hash存入数据
redisTemplate.opsForHash().put("activity:"+activityId,killCoure.getId().toString(),killCoure);//activity是一个前缀,用来方便取数据;
"activity:"+activityId这个是第一个key,为了方便称呼为大key
killCoure.getId().toString()是因为第一篇万丈中redisconfig对hash的key做了序列化要用String类型,这是第二个key,称呼为小key;
killCoure这是存入redis的value值,我存的是一个对象;
整个用法如下:
redisTemplate.opsForHash().put(key1,key2,value)
4.用信号量存秒杀数量用法:
4.1注入:
@Autowired private RedissonClient redissonClient;
4.2使用:
String key = activityId+":"+killCoure.getId();//这是用来获取redis中value的key //获取每一个课程对应的信号量 RSemaphore semaphore = redissonClient.getSemaphore(key); //设置秒杀数量 boolean setPermits = semaphore.trySetPermits(10000);//10000代表对应value值的数量
5.从redis中获取value值
Set



