Commit c8eac99d by wangweidong

土工平台修改

parent 84bbb52c
......@@ -4,13 +4,15 @@ import net.jodah.expiringmap.ExpirationPolicy;
import net.jodah.expiringmap.ExpiringMap;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.concurrent.TimeUnit;
@Component
public class InitBalanceMap implements InitializingBean {
public static ExpiringMap<String,String> mapBalanceId = null;
public static HashMap<String,String> mapBalanceId = null;
public static ExpiringMap<String,String> mapBalanceValue = null;
public ExpiringMap<String,String> getMapId(){
public HashMap<String,String> getMapId(){
return mapBalanceId;
}
......@@ -20,16 +22,7 @@ public class InitBalanceMap implements InitializingBean {
@Override
public void afterPropertiesSet() throws Exception {
mapBalanceId = ExpiringMap.builder()
//设置每个key有效时间60s,如果key不设置过期时间,key永久有效
.expiration(300, TimeUnit.SECONDS)
//允许更新过期时间值,如果不设置variableExpiration,不允许后面更改过期时间,一旦执行更改过期时间操作会抛异常UnsupportedOperationException
.variableExpiration()
//CREATED:只在put和replace方法清零过期时间
//ACCESSED:在CREATED策略基础上增加 在还没过期时get方法清零过期时间。
//清零过期时间也就是重置过期时间,重新计算过期时间
.expirationPolicy(ExpirationPolicy.CREATED)
.build();
mapBalanceId = new HashMap<>();
mapBalanceValue = ExpiringMap.builder()
......
......@@ -8,6 +8,9 @@ import io.netty.channel.ChannelInboundHandlerAdapter;
import net.jodah.expiringmap.ExpiringMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.HashMap;
public class ServerHandler extends ChannelInboundHandlerAdapter {
private static final Logger logger = LoggerFactory.getLogger(ServerHandler.class);
@Override
......@@ -24,10 +27,10 @@ public class ServerHandler extends ChannelInboundHandlerAdapter {
logger.error("天平传输的原始数据为:"+body);
logger.error("天平传输的处理数据为:"+ConvertHexStrToByteArray.balanceTextChangg(body));
InitBalanceMap mapInit = (InitBalanceMap)SpringUtil.getBean("initBalanceMap");
ExpiringMap<String,String> mapId = mapInit.getMapId();
HashMap<String,String> mapId = mapInit.getMapId();
ExpiringMap<String,String> mapValue = mapInit.getMapValue();
if (mapId.get(oid)==null){
mapId.put(oid,ConvertHexStrToByteArray.balanceTextChangg(body));
mapId.put(oid,body);
}else{
mapValue.put(mapId.get(oid),ConvertHexStrToByteArray.balanceTextChangg(body));
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment