From f3ff5ab043cf612e119fd90cd82e49b2cfc2ab5a Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 27 四月 2021 19:19:53 +0800 Subject: [PATCH] 搜索引擎优化,Bilibili初步集成 --- src/main/java/com/yeshi/buwan/controller/parser/UserParser.java | 24 ++++++++++++++++++------ 1 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/controller/parser/UserParser.java b/src/main/java/com/yeshi/buwan/controller/parser/UserParser.java index da328aa..304f67a 100644 --- a/src/main/java/com/yeshi/buwan/controller/parser/UserParser.java +++ b/src/main/java/com/yeshi/buwan/controller/parser/UserParser.java @@ -209,19 +209,31 @@ } } } - if (list == null || list.size() < 3) { - List<String> list1 = solrInternetSearchVideoDataManager.getSuggestKeyList(key); - if (list1 != null) { - list.addAll(list1); - } + List<String> list1 = solrInternetSearchVideoDataManager.getSuggestKeyList(key); + if (list1 != null) { + list.addAll(list1); } + + //鎸夊叧閿瘝鐨勫尮閰嶅害鎺掑簭 + Comparator<String> cm = new Comparator<String>() { + @Override + public int compare(String o1, String o2) { + float s1 = CompareStrSimUtil.getSimilarityRatio(o1, key, true); + float s2 = CompareStrSimUtil.getSimilarityRatio(o2, key, true); + return s2 > s1 ? 1 : -1; + } + }; + + Collections.sort(list, cm); + JSONObject object = new JSONObject(); object.put("count", list.size() + ""); JSONArray array = new JSONArray(); for (int i = 0; i < list.size(); i++) { - array.add(StringUtil.outPutResultJson(list.get(i))); + if (i < 10) + array.add(StringUtil.outPutResultJson(list.get(i))); } object.put("data", array); out.print(JsonUtil.loadTrueJson(object.toString())); -- Gitblit v1.8.0