Authored by hugufei

fix bug

@@ -14,16 +14,23 @@ import java.util.concurrent.TimeUnit; @@ -14,16 +14,23 @@ import java.util.concurrent.TimeUnit;
14 14
15 @Component 15 @Component
16 public class BigdataSimilarSknIndexBuilder extends IIndexBuilder { 16 public class BigdataSimilarSknIndexBuilder extends IIndexBuilder {
  17 +
17 @Autowired 18 @Autowired
18 private SimilarSknMapper similarSknMapper; 19 private SimilarSknMapper similarSknMapper;
19 20
20 LoadingCache<String, Integer> cache = CacheBuilder.newBuilder().maximumSize(10000).expireAfterWrite(10, TimeUnit.MINUTES).build(new CacheLoader<String, Integer>() { 21 LoadingCache<String, Integer> cache = CacheBuilder.newBuilder().maximumSize(10000).expireAfterWrite(10, TimeUnit.MINUTES).build(new CacheLoader<String, Integer>() {
  22 + @Override
21 public Integer load(String key) { 23 public Integer load(String key) {
22 return getMaxDateId(); 24 return getMaxDateId();
23 } 25 }
24 }); 26 });
25 27
26 @Override 28 @Override
  29 + public void init(){
  30 + cache.cleanUp();
  31 + }
  32 +
  33 + @Override
27 public int getTotalCount() throws Exception { 34 public int getTotalCount() throws Exception {
28 return similarSknMapper.selectCount(cache.get("maxDataId")); 35 return similarSknMapper.selectCount(cache.get("maxDataId"));
29 } 36 }
@@ -42,4 +49,9 @@ public class BigdataSimilarSknIndexBuilder extends IIndexBuilder { @@ -42,4 +49,9 @@ public class BigdataSimilarSknIndexBuilder extends IIndexBuilder {
42 private Integer getMaxDateId() { 49 private Integer getMaxDateId() {
43 return similarSknMapper.selectLatestDateId(); 50 return similarSknMapper.selectLatestDateId();
44 } 51 }
  52 +
  53 + @Override
  54 + public void finish(){
  55 + cache.cleanUp();
  56 + }
45 } 57 }