websocket实现后端去前端实时交互(redis模拟数据库)
1.配置类
代码片
.
/**
* webSocket配置类
*/
@Configuration
public class SeckillSocketConfig {
@Bean
public ServerEndpointExporter serverEndpointExporter() {
return new ServerEndpointExporter();
}
}
2.用一个方法,将数据存进redis中,用set集合
代码片
.
/**
* 从redis中存取数据并存入redis中
*/
public void operateRedis(){
Jedis jedis=new Jedis("127.0.0.1",6379);
List<Seckill> seckills=seckillMapper.getAllSeckill();
Map<Integer, Integer> redisDatas=new HashMap<>();
for (Seckill s:seckills){
redisDatas.put(Math.toIntExact(s.getSeckillid()),s.getSurplus());
}
// System.out.println(redisDatas);
Set<Integer> sets = redisDatas.keySet(); //得到所有key的集合
for (Integer in : sets) {
String str = String.valueOf(redisDatas.get(in));
String redisKey="seckill"+in;
int values=Integer.parseInt(str);
for (int i=0;i<values