1
zj
yesterday 5e57de9b12ee136e45ce5754c7fe2e7eb12af05a
trading-order-service/src/main/java/com/yami/trading/service/user/impl/SessionTokenServiceImpl.java
@@ -3,27 +3,35 @@
import com.yami.trading.common.util.StringUtils;
import com.yami.trading.common.util.UUIDGenerator;
import com.yami.trading.service.SessionTokenService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.TimeUnit;
@Service
public class SessionTokenServiceImpl implements SessionTokenService {
    private volatile Map<String, String> cache = new ConcurrentHashMap<String, String>();
    private static final String KEY_PREFIX = "session_token:";
    private static final long TTL_MINUTES = 10;
    @Autowired
    private RedisTemplate<String, Object> redisTemplate;
    @Override
    public String savePut(String partyId) {
        String session_token = UUIDGenerator.getUUID();
        cache.put(session_token, partyId);
        return session_token;
        String sessionToken = UUIDGenerator.getUUID();
        redisTemplate.opsForValue().set(KEY_PREFIX + sessionToken, partyId, TTL_MINUTES, TimeUnit.MINUTES);
        return sessionToken;
    }
    @Override
    public String cacheGet(String session_token) {
        if (StringUtils.isNullOrEmpty(session_token)) {
            return null;
        }
        return cache.get(session_token);
        Object value = redisTemplate.opsForValue().get(KEY_PREFIX + session_token);
        return value == null ? null : String.valueOf(value);
    }
    @Override
@@ -31,7 +39,6 @@
        if (StringUtils.isNullOrEmpty(session_token)) {
            return;
        }
        cache.remove(session_token);
        redisTemplate.delete(KEY_PREFIX + session_token);
    }
}