Browse Source

1、redis缓存加载

louhr 5 years ago
parent
commit
d2c2f57868

+ 6 - 0
kernel/pom.xml

@@ -37,6 +37,12 @@
 			<version>1.0</version>
 		</dependency>
 
+		<dependency>
+			<groupId>com.lantone.qc</groupId>
+			<artifactId>nlp</artifactId>
+			<version>1.0</version>
+		</dependency>
+
 		<dependency>
 			<groupId>com.lantone.qc</groupId>
 			<artifactId>trans</artifactId>

+ 0 - 2
kernel/src/main/java/com/lantone/qc/kernel/KernelApplication.java

@@ -9,9 +9,7 @@ import org.springframework.context.annotation.ComponentScan;
 @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
 @ComponentScan("com.lantone.qc")
 public class KernelApplication {
-
 	public static void main(String[] args) {
 		SpringApplication.run(KernelApplication.class, args);
 	}
-
 }

+ 56 - 14
kernel/src/main/java/com/lantone/qc/kernel/util/CacheFileManager.java

@@ -52,29 +52,71 @@ public class CacheFileManager {
         Connection conn = nlpJdbc.connect();
         Statement st = null;
         ResultSet rs = null;
+        String r1, r2, r3, r4, r5;
         try {
             EncrypDES encrypDES = new EncrypDES();
-            //所有词典库 不能用concat_group 大小写不区分
-            String sql = "select l_1.name l_1_name, l_1.type_id type_id, l_2.name l_2_name, \n" +
-                    "kc.lib_name, dis.is_chronic, dis.is_infections, group_concat(l_1.name) group_name, group_concat(d.feature) feature_name \n" +
-                    "from kl_library_info l_1\n" +
-                    "                    left join kl_library_info l_2 on l_1.concept_id = l_2.concept_id and l_2.is_concept = 1\n" +
-                    "                    left join kl_concept kc on l_1.concept_id = kc.id\n" +
-                    "                    left join kl_disease dis on l_1.concept_id = dis.concept_id\n" +
-                    "left join doc_relevant_feature d on d.diagnose = kc.id\n" +
-                    "                    where kc.is_deleted = 'N' and l_1.type_id = 18 group by l_1.concept_id";
             st = conn.createStatement();
+            //疾病相關特征
+            String sql = "select kc.id, group_concat(feature) feature_name from kl_concept kc, doc_relevant_feature drf\n" +
+                    "where kc.id = drf.diagnose group by kc.id";
+            Map<String, String> map = new HashMap<>();
             rs = st.executeQuery(sql);
+            while (rs.next()) {
+                r1 = rs.getString(1);
+                r2 = rs.getString(2);
+                r2 = r2 == null ? "" : r2;
+                map.put(r1, r2);
+            }
+
+            //所有词典库 不能用concat_group 大小写不区分
+            sql = "select l_1.name l_1_name, l_1.type_id type_id, l_2.name l_2_name, \n" +
+                    "kc.lib_name, dis.is_chronic, dis.is_infections, group_concat(l_1.name) group_name, l_1.concept_id \n" +
+                    "from kl_library_info l_1\n" +
+                    "left join kl_library_info l_2 on l_1.concept_id = l_2.concept_id and l_2.is_concept = 1\n" +
+                    "left join kl_concept kc on l_1.concept_id = kc.id\n" +
+                    "left join kl_disease dis on l_1.concept_id = dis.concept_id\n" +
+                    "where kc.is_deleted = 'N' and l_1.type_id = 18 group by l_1.concept_id";
+
             FileWriter fw = new FileWriter(path + "concept_diag_properties.dict");
-            String r1, r2, r3, r4, r5;
+            rs = st.executeQuery(sql);
             while (rs.next()) {
-                r1 = CryptUtil.decrypt_char(rs.getString(4));
+                r1 = rs.getString(4);
                 r2 = rs.getString(5);
                 r3 = rs.getString(6);
-                r4 = CryptUtil.decrypt_char(rs.getString(7));
-                r5 = CryptUtil.decrypt_char(rs.getString(8));
+                r4 = rs.getString(7);
+                r5 = rs.getString(8);
+
+                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
+                r2 = r2==null?"0":r2;
+                r3 = r3==null?"0":r3;
+                r4 = CryptUtil.decrypt_char(r4==null?"":r4);
+                r5 = map.get(r5) == null ? "" : map.get(r5);
+
+                fw.write(encrypDES.encrytor(r1 + "|" + r2 + "|" + r3 + "|" + r4 + "|" + r5));
+                fw.write("\n");
+            }
+            fw.close();
 
-                fw.write(r1 + "|" + r2 + "|" + r3 + "|" + r4 + "|" + r5);
+            //性质词典
+            sql = "select name from kl_library_info where type_id = 4";
+            fw = new FileWriter(path + "concept_prop.dict");
+            rs = st.executeQuery(sql);
+            while (rs.next()) {
+                r1 = rs.getString(1);
+                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
+                fw.write(encrypDES.encrytor(r1));
+                fw.write("\n");
+            }
+            fw.close();
+
+            //程度词典
+            sql = "select name from kl_library_info where type_id = 6";
+            fw = new FileWriter(path + "concept_degree.dict");
+            rs = st.executeQuery(sql);
+            while (rs.next()) {
+                r1 = rs.getString(1);
+                r1 = CryptUtil.decrypt_char(r1==null?"":r1);
+                fw.write(encrypDES.encrytor(r1));
                 fw.write("\n");
             }
             fw.close();

+ 98 - 0
kernel/src/main/java/com/lantone/qc/kernel/util/CacheUtil.java

@@ -0,0 +1,98 @@
+package com.lantone.qc.kernel.util;
+
+
+import com.lantone.qc.nlp.participle.cfg.Configuration;
+import com.lantone.qc.nlp.participle.cfg.DefaultConfig;
+import com.lantone.qc.security.util.EncrypDES;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.ApplicationArguments;
+import org.springframework.boot.ApplicationRunner;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : CacheUtil
+ * @Description : Redis存放
+ * @Author : 楼辉荣
+ * @Date: 2020-03-11 11:42
+ */
+@Component
+public class CacheUtil implements ApplicationRunner {
+    Logger logger = LoggerFactory.getLogger(DefaultConfig.class);
+    @Autowired
+    private RedisUtil redisUtil;
+
+    public void run(ApplicationArguments var1) {
+        try {
+            this.putConceptDiagPropertyMap();
+            this.putConceptPropMap();
+            this.putConceptDegreeMap();
+        } catch (Exception e) {
+            logger.error("缓存文件读取错误。。。");
+        }
+    }
+
+    /**
+     * 疾病相关信息放入缓存
+     * 包括疾病是否是慢病、传染病、常见症状、同义词
+     */
+    public void putConceptDiagPropertyMap() throws Exception {
+        Configuration configuration = new DefaultConfig();
+        List<String> lines = configuration.readTargetFileContents("cache/concept_diag_properties.dict");
+
+        Map<String, Map<String, Object>> diagMap = new HashMap<>();
+        for (String line : lines) {
+            String[] line_arr = line.split("\\|", -1);
+            if (line_arr.length == 5) {
+                List<String> synonymsList = new ArrayList<>();
+                List<String> symptomsList = new ArrayList<>();
+                if (StringUtils.isNotEmpty(line_arr[3])) {
+                    synonymsList = java.util.Arrays.asList(line_arr[3].split(","));
+                }
+                if (StringUtils.isNotEmpty(line_arr[4])) {
+                    symptomsList = java.util.Arrays.asList(line_arr[4].split(","));
+                }
+                Map<String, Object> map = new HashMap<>();
+                map.put("infectious", line_arr[2]);
+                map.put("chronic", line_arr[1]);
+                map.put("synonyms", synonymsList);
+                map.put("symptoms", symptomsList);
+                diagMap.put(line_arr[0], map);
+            }
+        }
+        redisUtil.set(KernelConstants.CONCEPT_DIAG_PROPERTY_MAP, diagMap);
+    }
+
+    /**
+     * 性质词典放入redis缓存
+     */
+    public void putConceptPropMap() throws Exception {
+        Configuration configuration = new DefaultConfig();
+        List<String> lines = configuration.readTargetFileContents("cache/concept_prop.dict");
+        List<String> propList = new ArrayList<>();
+        for (String line : lines) {
+            propList.add(line);
+        }
+        redisUtil.set(KernelConstants.CONCEPT_PROPERTY_LIST, propList);
+    }
+
+    /**
+     * 程度词典放入redis缓存
+     */
+    public void putConceptDegreeMap() throws Exception {
+    Configuration configuration = new DefaultConfig();
+        List<String> lines = configuration.readTargetFileContents("cache/concept_degree.dict");
+        List<String> degreeList = new ArrayList<>();
+        for (String line : lines) {
+            degreeList.add(line);
+        }
+        redisUtil.set(KernelConstants.CONCEPT_DEGREE_LIST, degreeList);
+    }
+}

+ 16 - 0
kernel/src/main/java/com/lantone/qc/kernel/util/KernelConstants.java

@@ -0,0 +1,16 @@
+package com.lantone.qc.kernel.util;
+
+/**
+ * @ClassName : KernelConstants
+ * @Description : 业务常数类定义
+ * @Author : 楼辉荣
+ * @Date: 2020-03-11 11:39
+ */
+public class KernelConstants {
+    //疾病相关属性
+    public static final String CONCEPT_DIAG_PROPERTY_MAP = "concept_diag_property_map";
+    //性质词典
+    public static final String CONCEPT_PROPERTY_LIST = "concept_property_list";
+    //程度词典
+    public static final String CONCEPT_DEGREE_LIST = "concept_degree_list";
+}

+ 37 - 0
kernel/src/main/resources/cache/concept_degree.dict

@@ -0,0 +1,37 @@
+uidUdrJbk78=
+qQqpEo15ssQ=
+13hMf2+27n8=
+IBspE5SaQug=
+ACBldOCZbZA=
+1vQM7azwDns=
+ygAofZDmoXg=
+wylFDXrAYHE=
+P+BKbL1kQD8=
+tahNLlWjgJE=
+80Nkxhfxkgs=
+oY6bbHm5Lps=
+tx2fJKAtv1w=
+OrWlJTJ0J96Zj8sU8q9w8Q==
+PjQOO0tmrRw=
+AlvzKzUUJvw=
+fEJ8CwA/38I=
+jt/6SW87dbg=
+D3S+G5SIuUM=
+9aoxo1pS5eo=
+57dcXjp1Pvg=
+jERuqkt0n1U=
+rbpC50cjK/8=
+0BgO0r+MlpeZj8sU8q9w8Q==
+UI5S0fjK0mgEBLNEPwIttg==
+zqk1sdHLTGo=
+mxVgiYE3Zlw=
+j2t0YGLXbQQ=
+8P7OD2WW2MU=
+9JAYuDiaFSQ=
+PtoheGlVmys=
+80eiyRR8T7c=
+f7a1GfJz/oA=
+dc3CWhrdobs=
+9N9cQ/xIE3E=
+D4WtrB/XSAo=
+iRU7Kkhw1tc=

File diff suppressed because it is too large
+ 21513 - 0
kernel/src/main/resources/cache/concept_diag_properties.dict


+ 519 - 0
kernel/src/main/resources/cache/concept_prop.dict

@@ -0,0 +1,519 @@
+odVNTZCTdNYaMWEdQab8gA==
+OkkXMTinE2ExdtgaUF2iRg==
+AOYA4qZHaCJmDLcVMWpn6g==
+XTjWGwZLoH3tUpGJ52qpCg==
+fvMFspEFZPkaMWEdQab8gA==
+jPj224YQYEpq0pKI6dAjRg==
+jGNBUiKEPrGghPBEKYKOCQ==
+gbYbnrBrsk+ghPBEKYKOCQ==
+qgptQDm5mSgaMWEdQab8gA==
+V0frMxTQuVcaMWEdQab8gA==
+gI1QxuQhjRgaMWEdQab8gA==
+0uBAYDcA6Mm/WZ1+qt48kw==
+0ESg7XKAgw8aMWEdQab8gA==
+L1LCaflWvS4aMWEdQab8gA==
+JFo4hI3I1qkaMWEdQab8gA==
+tJtba8Y02GQaMWEdQab8gA==
+JpIvzr3hfcoaMWEdQab8gA==
++EzUoT1K0zu/WZ1+qt48kw==
+G5tSgOX6vkA=
+3tjuh+egedW/WZ1+qt48kw==
+I0wKw40k9C6/WZ1+qt48kw==
+TMuxXbi9ESEaMWEdQab8gA==
+yo+GbHifkPk=
+LBjGu7/8rYw=
+BVz/fS/NZOCghPBEKYKOCQ==
+p3JVn8leTclq0pKI6dAjRg==
+zDUsAXw2UVQHjnX6dZF4Ew==
+l494Q3Tocs9q0pKI6dAjRg==
+e5FsHdefSuFq0pKI6dAjRg==
+DF2pk9TUrBMaMWEdQab8gA==
+EGkUrv/kUpS/WZ1+qt48kw==
+1X3Dx7FCTJQ=
+JrI31Jij6WAaMWEdQab8gA==
+o71A6lUJMwzpSPMVrsDEgw==
+i3rPNqdocMgaMWEdQab8gA==
+RpYUIRDwVBIaMWEdQab8gA==
+WonmG1XCAU4aMWEdQab8gA==
+JZMct5466Rhq0pKI6dAjRg==
+k63/U+Ort/saMWEdQab8gA==
+CT1Qdv9xVW8=
++ZOgvTYPC4YaMWEdQab8gA==
+R6oUrbemUS5q0pKI6dAjRg==
+jV5cHFmacYMaMWEdQab8gA==
+2+whHf/kfipsvxdkUUultA==
+QIagWIYES2+ghPBEKYKOCQ==
+mri8Sg/2Vyk=
+S24S/SVRSFwaMWEdQab8gA==
+nvKb53gRgQs=
+9ydnzW/kbQUaMWEdQab8gA==
+djpdgRqrDgAaMWEdQab8gA==
+yM5gnxabdiwaMWEdQab8gA==
+wou8DCGiuy8aMWEdQab8gA==
+biT7+6/eTSsaMWEdQab8gA==
+Ea5hafp0ahIaMWEdQab8gA==
+2K+NsZ/3RjsaMWEdQab8gA==
+SGB3mhKm2uMaMWEdQab8gA==
+dqIa3WNVA1gaMWEdQab8gA==
+ZUu7KwrAHMVq0pKI6dAjRg==
+qXuWTPJLQOwaMWEdQab8gA==
+GDzRkf4gT0EaMWEdQab8gA==
+RVe725p8WhUaMWEdQab8gA==
+gymUzeBoiIRq0pKI6dAjRg==
+7KziSZAu06QaMWEdQab8gA==
+Vobhtw67+51q0pKI6dAjRg==
+Vobhtw67+514eMxTN13cAA==
+VVS4pGmCJZPpSPMVrsDEgw==
+6k99qhIC6DWghPBEKYKOCQ==
+PSCYD2hPTR0aMWEdQab8gA==
+gFUgWFy26P0=
+kyjZU3demb6ghPBEKYKOCQ==
+FjDwbPkvj7MaMWEdQab8gA==
+SpF2P7OBV2waMWEdQab8gA==
+h8Bw1OdhxCxq0pKI6dAjRg==
+bCSHFbkAL4yghPBEKYKOCQ==
+KBLbMm9Rg00aMWEdQab8gA==
+cMDXIcn4/roaMWEdQab8gA==
+3ih+r7xNphAaMWEdQab8gA==
+n1CNc/yBJBC/WZ1+qt48kw==
+Owld8/AURlw=
+mAJFy31Sjy0=
+vMcoJpn/EowaMWEdQab8gA==
+FERqB50unIIaMWEdQab8gA==
+Vk7SdPjxVe0=
+73cVW/j1HvZq0pKI6dAjRg==
+ThI1oF0jTyQaMWEdQab8gA==
+uumHReV9kAY=
+WVD3SOkblwcaMWEdQab8gA==
+uXnJFnxwdLwaMWEdQab8gA==
+36s42ZhwjJ4aMWEdQab8gA==
+8LToiFw6Mw9q0pKI6dAjRg==
+wVmCFP4ZRUU=
+Mxw29SEPM3c=
+ctUprXweh50aMWEdQab8gA==
+nAVIQhmgLsUaMWEdQab8gA==
+VQyanJdAJxoaMWEdQab8gA==
+RcaXpX5nSTIaMWEdQab8gA==
+L5zky1DDTAsaMWEdQab8gA==
+aMsbvjbfGsUaMWEdQab8gA==
+0tLH7a1oewEaMWEdQab8gA==
+gzIPNh7VvRdq0pKI6dAjRg==
+EAHqmgUXU5AaMWEdQab8gA==
+9BWAcjNnAEoaMWEdQab8gA==
+c5eJOWmExRAaMWEdQab8gA==
+g3QrwWxlyUAaMWEdQab8gA==
+iKH2ctKrQsrByebOmN8ISg==
+FbaQU4RtVjcaMWEdQab8gA==
+mYSljOcrk0K/WZ1+qt48kw==
+PkaEvXct1wgaMWEdQab8gA==
+fngGWVWYn6WdKD4j4uT1Hw==
+yuIGM9fsqMcaMWEdQab8gA==
+ts6DF4HQ0HRq0pKI6dAjRg==
+SRuSgKYJyN4aMWEdQab8gA==
+V64DvKuQSBAaMWEdQab8gA==
+iVgG1u1OC8gaMWEdQab8gA==
+zLFTuopb2xQaMWEdQab8gA==
+UKdzPT/PdY4=
+jAJIvwKpsMUaMWEdQab8gA==
+DhkxRDoZydMaMWEdQab8gA==
+ccNwU865frSghPBEKYKOCQ==
+CqDIQvkjWc4=
+9ldFqvXLJDs=
+3Ju2qperX2Rq0pKI6dAjRg==
+uvpQ8z/HkZUaMWEdQab8gA==
+fCCGDSNr4Ai/WZ1+qt48kw==
+akGV3uAmmCg=
+YKoY1HUwa5dq0pKI6dAjRg==
+FKgNi2HAQw0aMWEdQab8gA==
+5AJLdIVKJec=
+L0SygCRVgAe/WZ1+qt48kw==
+oowv/+ytHYwaMWEdQab8gA==
+64cdDvc0KKfpSPMVrsDEgw==
+zTAsKTMyHTUaMWEdQab8gA==
+Il3PMYAJ5Yo=
+8y8wJLjHjH8aMWEdQab8gA==
+QoX1/xFKfpkaMWEdQab8gA==
+6EiWonjOwKYaMWEdQab8gA==
+5HNYxlZxEDkaMWEdQab8gA==
+TNJymu+aF/u/WZ1+qt48kw==
+K+KLzhilnJQaMWEdQab8gA==
+IAucFrl7qqyp+9420nJ67g==
+Qjud1OfeyEw=
+oNnLavEfqgdq0pKI6dAjRg==
+yk/QEaG+Ae+ghPBEKYKOCQ==
+C/uLLptJUbg=
+JO28T7ZOi9Xs0sESQOYMkQ==
+G2JMIClmjIa/WZ1+qt48kw==
+PHeJ+leYfLk=
+qnB/1kQQGAPpSPMVrsDEgw==
+hwxYaOoozhIaMWEdQab8gA==
+6cTMmtjeA6WghPBEKYKOCQ==
+KQicTqs9ECAaMWEdQab8gA==
+TAPZwDxdjC0=
+OHZmOaB2mb4=
+UpMT8idizWMj0xRUKyJr6A==
+EQ0++UQ15V5q0pKI6dAjRg==
+EhN8Yg/+42MaMWEdQab8gA==
+yvOBbTrbEUoaMWEdQab8gA==
+RMUf8GCSiJ0aMWEdQab8gA==
+Vsoa9AmWfm8aMWEdQab8gA==
+4FIOF0SZJ2Nq0pKI6dAjRg==
+lprKyZfl4B6/WZ1+qt48kw==
+PWs1wbzhC2Fq0pKI6dAjRg==
+Bugt8EYpa38aMWEdQab8gA==
+kIPjEFCf30YaMWEdQab8gA==
+DQ+1TPCJs2Q=
+XLKpe1H4VQgaMWEdQab8gA==
+oQLAwK6A2y0aMWEdQab8gA==
+gThU0JmDvXNq0pKI6dAjRg==
+xvjFgDnL1rYaMWEdQab8gA==
+ttuFIQiBSmAaMWEdQab8gA==
+YfGX4BbtCXIaMWEdQab8gA==
+D6ujgaaSsGxq0pKI6dAjRg==
+3ZuHgeNgwx0aMWEdQab8gA==
+LBuXZAsIXhhq0pKI6dAjRg==
+7OGqlDA4tc0aMWEdQab8gA==
+6eIymASN6HEaMWEdQab8gA==
+rPqlaHXZIBoaMWEdQab8gA==
+sv2yZBs7V3Y=
+v9Prb5ovLLMaMWEdQab8gA==
+fptZRiOUUu9q0pKI6dAjRg==
+fMS69MoFdivs0sESQOYMkQ==
+cNBFebTOOoE=
+ZldvwrHIQlYaMWEdQab8gA==
+S/b35R4VffaghPBEKYKOCQ==
+zMoaQxZrUo4aMWEdQab8gA==
+cfNSoTgCMha/WZ1+qt48kw==
+16T3x9bfL1EaMWEdQab8gA==
+IbRtNhDz9YNq0pKI6dAjRg==
+cG1dSZtHtbyghPBEKYKOCQ==
+gIdp92qejihq0pKI6dAjRg==
+vccr/IKfDd+ghPBEKYKOCQ==
+58e2tgoIRjZq0pKI6dAjRg==
+gmLn+L6avv9q0pKI6dAjRg==
+XuHU0Y1pAdxq0pKI6dAjRg==
+9ePFcliZ0QWghPBEKYKOCQ==
+SvpqtYAA0EM=
+rsX2quclU0OghPBEKYKOCQ==
+RLc9Sca0tEVq0pKI6dAjRg==
+3ZHOm1td6qAaMWEdQab8gA==
+xaW5SqJ8iKVq0pKI6dAjRg==
+eiqhHH5l+pcaMWEdQab8gA==
++tFbHs9uUve/WZ1+qt48kw==
+Zy4D1JdqFB8=
+KLlYPzdTChdq0pKI6dAjRg==
+eJnwrk7fAQ4j0xRUKyJr6A==
+URQ2oh9UAmRq0pKI6dAjRg==
+wQpvR1wISUYaMWEdQab8gA==
+nsnEBGav6rE=
+iWdxen7+876ghPBEKYKOCQ==
+9kEdorYq9m1q0pKI6dAjRg==
+vJABTBK+B8EaMWEdQab8gA==
+juJODJsHekFq0pKI6dAjRg==
+jT+26oG6bK1q0pKI6dAjRg==
+bHyfFlmSZkOghPBEKYKOCQ==
+ajg7j+L4sAJq0pKI6dAjRg==
+unNPBg/JFwyQroyhltzm/w==
+1WxISEQgIpWQroyhltzm/w==
+ygrHvVvMmfwaMWEdQab8gA==
+maJyte1x/HzpSPMVrsDEgw==
+oNxHPqe07fC/WZ1+qt48kw==
+AwhZhidWwMUaMWEdQab8gA==
+GJFkZQknEB4aMWEdQab8gA==
+3+/siOBL19Zq0pKI6dAjRg==
+o9PHablFoVw=
+VkQzp6jfG3lq0pKI6dAjRg==
+ZfZOQNUDXTqghPBEKYKOCQ==
+iW57Vui3M3xq0pKI6dAjRg==
+0RrRlk0qZaeghPBEKYKOCQ==
+hWwmks8uYpGQroyhltzm/w==
+a2OX1jWA7uC+AlTuumOl8Q==
+OtOP3FuKToU=
+HeV5i3Z0T4xq0pKI6dAjRg==
+kqnWOOkdTeYaMWEdQab8gA==
+x6wBNvwcttg=
+tXLObPqzKOE=
+pGzYL5VYctUaMWEdQab8gA==
+ZTORLADhCW0aMWEdQab8gA==
+7tC2Bywa6n4aMWEdQab8gA==
+cHdYiJntRWkaMWEdQab8gA==
+/9URtgHOtUUaMWEdQab8gA==
+kNsk4iO0Xd0j0xRUKyJr6A==
+Gt8HYUmouagaMWEdQab8gA==
+qef+pcIR73tq0pKI6dAjRg==
+Tiv6IlLUW/xq0pKI6dAjRg==
+xgk9x/CvXw+ghPBEKYKOCQ==
+QFQTgzuzi6W/WZ1+qt48kw==
+2hGJbe0t7udq0pKI6dAjRg==
+YbJIPW+6JnY=
+Jw0ZKVQkmXeghPBEKYKOCQ==
+h//Ur64O+iI=
+1czDtKTL3XS/WZ1+qt48kw==
+0bl2kILVx8Jq0pKI6dAjRg==
+y9wq0xYa5bU=
+DFLQgfaB+E8=
+2S3kaNxJO58aMWEdQab8gA==
+C7LBN6EQAUwaMWEdQab8gA==
+sGbNCQU0GXpq0pKI6dAjRg==
+7rHv+q9PhqxDD1r5d/BAag==
+N76eBZg3YC0aMWEdQab8gA==
+gZ1HFs0NJ7w=
+TgowklDSJtFq0pKI6dAjRg==
+XXxX/NgmOKMaMWEdQab8gA==
+2ipORgezQiA=
+YkR6TZLmwPZq0pKI6dAjRg==
+xhdoLoMnPT8aMWEdQab8gA==
+kTQ5h7uqTd0aMWEdQab8gA==
+1diZRewSThxq0pKI6dAjRg==
+DdOs5Dtw0QwaMWEdQab8gA==
+afmfQi67xnJq0pKI6dAjRg==
+NSeY4f8Mo4AaMWEdQab8gA==
+9Mqch0gZ4bMaMWEdQab8gA==
+edzHxXIBMxsaMWEdQab8gA==
+pQ9xelBzl1caMWEdQab8gA==
+htAyobG6kIBq0pKI6dAjRg==
+2TyAqMIiRu4=
+ZhsxW8BXhlu/WZ1+qt48kw==
+cvMNyuCR8jnpSPMVrsDEgw==
+Y694kepkOly/WZ1+qt48kw==
+ETolRKe5xhtq0pKI6dAjRg==
+9UyLk6fZS1s=
+9FYOzHANgzaghPBEKYKOCQ==
+FaD8Wj7rgDS/WZ1+qt48kw==
+FaD8Wj7rgDRpvCUuYX4gJA==
+FaD8Wj7rgDScR1QaELJR/w==
+AWMrq4G0FvA=
+j0xYRyAbdp4aMWEdQab8gA==
+ukoV0I2Qhxw=
+kWBkNzUYD8xq0pKI6dAjRg==
+nch6ndHEtL8aMWEdQab8gA==
+mr66kJ4u4/4aMWEdQab8gA==
+zCDDcipYGBYaMWEdQab8gA==
+JawkevnCrNcaMWEdQab8gA==
+X9DVt+bYPiU=
+dXKM9+v0/lkaMWEdQab8gA==
+6g7qp2z0JLDpSPMVrsDEgw==
+/fWZ8u1l5kCghPBEKYKOCQ==
+/h3WmQVnhkaQroyhltzm/w==
+D2eIGo+CU0dq0pKI6dAjRg==
+E5i7seXYodqghPBEKYKOCQ==
+4wo8hNCdEQHcJqG2J7qc0A==
+9M0sHQRn3fpq0pKI6dAjRg==
+oIx2ZYhYyxk=
+qxTfCy8x2ik=
+07DuDDhO4jkaMWEdQab8gA==
+dYNoJdOApK5q0pKI6dAjRg==
+IWL0Oj7ADB0=
+ZOEecSvxtC8=
+YOZTGnXDvadsvxdkUUultA==
+UQVK32p0OFbpSPMVrsDEgw==
+uWk7ACrYHFJq0pKI6dAjRg==
+wqW+L7C1QfI=
+FuqufNWLbz4aMWEdQab8gA==
+Ew/dIjaEJ2Nq0pKI6dAjRg==
+NbhJ7n5EBuM=
+bjWtH3otC6o=
++USosVem/aJq0pKI6dAjRg==
+BvUQsO1TZjQaMWEdQab8gA==
+dLvaeSicmePpSPMVrsDEgw==
+2s+Nci9wvwcaMWEdQab8gA==
+/ZBZNOiYzE8aMWEdQab8gA==
+luhIdIGyt96ghPBEKYKOCQ==
+d7ksvB02K9aL+e/gbkRInQ==
+mm3ggun0m48=
+Eup7Iju4x08=
+SXcydPTAZ4YaMWEdQab8gA==
+3UxZsrlCq+Nq0pKI6dAjRg==
+QM3KQcMrUkI=
+KTs7zu78+7aWVvDbfVHH+w==
+KTs7zu78+7Z2csObNB5GdBpJDSKGQ5Nk
++d4AfQta4L5q0pKI6dAjRg==
+HkUomzY3KJY=
+W5PUfdnc7Pw=
+cchXAGqWaFQaMWEdQab8gA==
+/B0ln0yF54Zq0pKI6dAjRg==
+RNUTN8me5q0aMWEdQab8gA==
+4/QeAGcSSrHpSPMVrsDEgw==
+hU2JsvCVd8gaMWEdQab8gA==
+xESGSvIVdxVq0pKI6dAjRg==
+CLKhNPrdK9YaMWEdQab8gA==
+nhtgaNgOsSe/WZ1+qt48kw==
+MkfhBWQmHjUaMWEdQab8gA==
+FPTfIIgfgBighPBEKYKOCQ==
+eXnY/Qg3yKU=
+D6nQ62orkv8=
+am6mi0e3+dlq0pKI6dAjRg==
+6qWbsFylfS5q0pKI6dAjRg==
+D+KYFTHzIUqghPBEKYKOCQ==
+JfNtumkrZmwaMWEdQab8gA==
+OhfCK/7YoDMaMWEdQab8gA==
+uAUhGcz2XWNq0pKI6dAjRg==
+9pzYhs9wWQoaMWEdQab8gA==
+9xziAfY5zfc=
+DH2VViKrbzkaMWEdQab8gA==
+cCyOhx2F/+W/WZ1+qt48kw==
+vuA/gXDqzAc=
+jryElcwKEMMaMWEdQab8gA==
+933rTvG15utEbEV59VU69w==
+C/TJ70+aNzqghPBEKYKOCQ==
++T2ENvG7ulOghPBEKYKOCQ==
++Ts5tEdthls=
+BTPWTevtxY8=
+bAvcVi4Iw6vpSPMVrsDEgw==
+gJq/yMRPk7gaMWEdQab8gA==
+8+/D6NypjdcaMWEdQab8gA==
+j0TGUFfUltwaMWEdQab8gA==
+w2CmHbWfJVI=
+C1b2yHS3+1QaMWEdQab8gA==
+RRR85iCoWWa/WZ1+qt48kw==
+kQFfa2bQHya/WZ1+qt48kw==
+FMXGCecU7OgaMWEdQab8gA==
+gG7DNKeNv9Vq0pKI6dAjRg==
+gG7DNKeNv9V4eMxTN13cAA==
+45cP/YqamBcaMWEdQab8gA==
+o40XnNQJ577Db3Oiq61FFg==
+cGTBLHk6/fxq0pKI6dAjRg==
+rrBNizBesucaMWEdQab8gA==
+ghSbmaLOO98aMWEdQab8gA==
+tF1pgJyo250aMWEdQab8gA==
+eGz28sziaVmghPBEKYKOCQ==
+zLVw5YczNHPpSPMVrsDEgw==
+R7v8iMqokEk=
+3w3MNEwTHk8aMWEdQab8gA==
+Xh3FKtdlhYy/WZ1+qt48kw==
+VIR00cdqqh0aMWEdQab8gA==
+RtC8zrx8egoaMWEdQab8gA==
+RiaKh/IQuaWghPBEKYKOCQ==
+9dso1o9+OM7s0sESQOYMkQ==
+ODU2O9saeM8aMWEdQab8gA==
+4BWPVwg3+jE=
+1eviNsbwnWxq0pKI6dAjRg==
+kDqtfeqQPDk=
+nZmQN7UbdAkaMWEdQab8gA==
+w4o2Z1lmVCg=
+ROkmk9MfDg8=
+JAfNtwJYV7saMWEdQab8gA==
+BeR0O3AurD4aMWEdQab8gA==
+7bA6trZEB8Q=
+si2t3a0KltRq0pKI6dAjRg==
+30WhMafI/yRq0pKI6dAjRg==
+vbGJne6FBZZq0pKI6dAjRg==
+9eeSihWwS76ghPBEKYKOCQ==
+eYrwlVYgQAsaMWEdQab8gA==
+6RmR/b9Obm6+AlTuumOl8Q==
+v/xMaaaT67tq0pKI6dAjRg==
+PkcmzsDUn16ghPBEKYKOCQ==
+gQV2OIMpEa8=
+C4enA8t9NfughPBEKYKOCQ==
+sr6bT6RKsitq0pKI6dAjRg==
+shI0WR1d09lq0pKI6dAjRg==
+2lpnzUoHMZSghPBEKYKOCQ==
+t+vxIjsI+jk=
+orFEvaQa0+AaMWEdQab8gA==
+Oetnwc0uUuUaMWEdQab8gA==
+d+882G/9KZEaMWEdQab8gA==
+z18Z0KDhGc4aMWEdQab8gA==
+EQW0OqsfNyEaMWEdQab8gA==
+H/372TJs4CgaMWEdQab8gA==
+2bg5JuTZYIZq0pKI6dAjRg==
+yozTkiKRt4w=
+eKLkFWM6lzO3npMo5tbzcg==
+bAOo+NrlnbighPBEKYKOCQ==
+DnrPIT/NOXI=
+4bDoLuz/AcSghPBEKYKOCQ==
+3JIpDnKrjdQaMWEdQab8gA==
+eWiAe5WTtz2ghPBEKYKOCQ==
+eE0eljGAWzoaMWEdQab8gA==
+/Ejs9xtVoJMaMWEdQab8gA==
+t5KJeZlZmszpSPMVrsDEgw==
+pVtlpklJukEaMWEdQab8gA==
+bKuUJ1epVUIaMWEdQab8gA==
+jgggdlL4muwaMWEdQab8gA==
+yYXcSsgwrg0aMWEdQab8gA==
+D0VZbLCI1TfpSPMVrsDEgw==
+fcTTwro3YPQaMWEdQab8gA==
+iuOCz6g1KhoaMWEdQab8gA==
+PsCXZRRLpTwaMWEdQab8gA==
+mrTtqKiM7D4aMWEdQab8gA==
+WM+hHqXm3roaMWEdQab8gA==
+fzQYZN7/Rp9q/dtjqADINg==
+ihFTlu1A6vIaMWEdQab8gA==
+9a1laFGjHo4aMWEdQab8gA==
+pF5N7sNda/QfyvOlpVTYWw==
+lW78Te9RjDE=
+G/1hbXprw9dq0pKI6dAjRg==
+u5kffeqLBwPb0/KEsrHb8w==
+sHSQOF0FvoC/WZ1+qt48kw==
+lLLr/uleASxq0pKI6dAjRg==
+Jo7ZM1oqGYoHjnX6dZF4Ew==
+issCvda36VJq0pKI6dAjRg==
+MtZYI/SxET8aMWEdQab8gA==
+6NOR1xwgrN4ZORR0TS8CTA==
+MGWoblWPeYNq0pKI6dAjRg==
+M7Z7ACPbCYFq0pKI6dAjRg==
+gvFsVXWZ7xc=
+aNXnTRhWOXA=
+898sulSjrhsj0xRUKyJr6A==
+APJT1toXTI6ghPBEKYKOCQ==
+Zj8xCLo0bk0aMWEdQab8gA==
+oiark/oywiK/WZ1+qt48kw==
+ApmEtMU6smIaMWEdQab8gA==
+pF+/2e5PCdgaMWEdQab8gA==
+sBgQBxYnmE8aMWEdQab8gA==
+tMp4JIy5a04aMWEdQab8gA==
+CsXFicbJvlS/WZ1+qt48kw==
+NhQ4s9J9XLW/WZ1+qt48kw==
+9LATiUgcdYi/WZ1+qt48kw==
+Ps0XYfFQ7g9q0pKI6dAjRg==
+xEHYC5PyimMaMWEdQab8gA==
+MmnONpzqj5YaMWEdQab8gA==
+usiV5tUbJPu/WZ1+qt48kw==
+3dB8ErzNVUC/WZ1+qt48kw==
+D3rFOPHTe6gaMWEdQab8gA==
+sPozkzJeO5QaMWEdQab8gA==
+BtOmpkWBQ4HpSPMVrsDEgw==
+PAjGL/UtmZRq0pKI6dAjRg==
+iKEaZ4FNNBW+AlTuumOl8Q==
+JAcPDQQ5IPs=
+vK8zo9f7Vfpq0pKI6dAjRg==
+Ldy6xov8vecaMWEdQab8gA==
+G4CG0zT9XI8aMWEdQab8gA==
+hS36/7wW1bIaMWEdQab8gA==
+tutXZSHjydYaMWEdQab8gA==
+9RSWCfix/bc=
+4BP6hjD4LyQ=
+rWtUOxHL5iAaMWEdQab8gA==
+EBIeu3DhNJtq0pKI6dAjRg==
+BsaRDUgaEH0=
+DHLT8UBzyDZq0pKI6dAjRg==
+zK3IJj4OCNIaMWEdQab8gA==
+lCrj7iocLJET950+ObWWMA==
+4EAa7rXXi9rpSPMVrsDEgw==
+yM/XklsMud0dF1YvrBdS2A==
+cxIZrq1MlLrtUpGJ52qpCg==
+Sw6IG9Roqdo6rgW0oOWrmg==
+Sw6IG9RoqdqQ1ZQuaxFH5g==
+Cec4J6QStebLjHoBBeC6Ww==
+1caEzMu1CUkaMWEdQab8gA==
+ZtKdu9HHJTA=
+pQpvrfs9itG/WZ1+qt48kw==
+7D8VdYPWvGBq0pKI6dAjRg==
+HCEq+yB3xiQaMWEdQab8gA==
+pbmV6usba1tq0pKI6dAjRg==
+cvMgig+0E/Vq0pKI6dAjRg==
+aKGgMCtUVXQ=
+8vFzRLfciaRq0pKI6dAjRg==
+Z5ZFEvbeawzs0sESQOYMkQ==
+iqIC0HGzbohq0pKI6dAjRg==
+QIca9jyM5X0=
+d3dBmbGSwkNq0pKI6dAjRg==
+7opvcLdtzDwaMWEdQab8gA==
+2j7TI2J4r6gaMWEdQab8gA==
+4PY37beFCVBq0pKI6dAjRg==
+sdyv+x7cRTnpSPMVrsDEgw==
+j4gk7NdCTkm+AlTuumOl8Q==
+Y1P+gxnHrTSghPBEKYKOCQ==
+R2aBTn/xDasaMWEdQab8gA==
+hlz0ecMpnC4aMWEdQab8gA==
+clAIS6TCz6PYaoRrnw0lXQ==
+nPD9uNpiPe1q0pKI6dAjRg==

+ 1 - 7
nlp/src/main/java/com/lantone/qc/nlp/participle/cfg/DefaultConfig.java

@@ -1,7 +1,7 @@
 package com.lantone.qc.nlp.participle.cfg;
 
 import com.lantone.qc.nlp.participle.word.Segment;
-import com.lantone.qc.pub.util.EncrypDES;
+import com.lantone.qc.nlp.util.EncrypDES;
 import com.lantone.qc.pub.util.PropertiesUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -26,8 +26,6 @@ public class DefaultConfig implements Configuration {
     private String path_prefix = "";
 
     public DefaultConfig() {
-        PropertiesUtil propertiesUtil = new PropertiesUtil("nlp.properties");
-        path_prefix = propertiesUtil.getProperty("cache.file.dir");
     }
 
     public Segment loadMainDict(String path) {
@@ -151,10 +149,6 @@ public class DefaultConfig implements Configuration {
         do {
             theWord = br.readLine();
             if (theWord != null && !"".equals(theWord.trim())) {
-                if (i == 5) {
-                    logger.info("读取文件第六行解密前:" + theWord.trim());
-                    logger.info("读取文件第六行解密后:" + encrypDES.decryptor(theWord.trim()));
-                }
                 fileContents.add(encrypDES.decryptor(theWord.trim()));
             }
             i++;

+ 73 - 0
nlp/src/main/java/com/lantone/qc/nlp/util/EncrypDES.java

@@ -0,0 +1,73 @@
+package com.lantone.qc.nlp.util;
+
+import org.apache.commons.codec.binary.Base64;
+
+import javax.crypto.*;
+import javax.crypto.spec.DESKeySpec;
+import java.io.UnsupportedEncodingException;
+import java.security.InvalidKeyException;
+
+/**
+ * @ClassName org.diagbot.pub.utils.security.EncrypDES
+ * @Description TODO
+ * @Author fyeman
+ * @Date 2019/2/22/022 14:44
+ * @Version 1.0
+ **/
+public class EncrypDES {
+    //随机加密串
+    private String key = "AUYEJHHH2019";
+    // SecretKey 负责保存对称密钥
+    private SecretKey deskey;
+    // Cipher负责完成加密或解密工作
+    private Cipher c;
+    // 该字节数组负责保存加密的结果
+    private byte[] cipherByte;
+
+    public EncrypDES() throws Exception {
+        DESKeySpec desKey = new DESKeySpec(key.getBytes("utf-8"));
+        SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
+        // 生成密钥
+        deskey = keyFactory.generateSecret(desKey);
+        // 生成Cipher对象,指定其支持的DES算法
+        c = Cipher.getInstance("DES");
+    }
+
+    /**
+     * 对字符串加密
+     *
+     * @param str
+     * @return
+     * @throws InvalidKeyException
+     * @throws IllegalBlockSizeException
+     * @throws BadPaddingException
+     */
+    public String encrytor(String str) throws InvalidKeyException,
+            IllegalBlockSizeException, BadPaddingException, UnsupportedEncodingException {
+        // 根据密钥,对Cipher对象进行初始化,ENCRYPT_MODE表示加密模式
+        c.init(Cipher.ENCRYPT_MODE, deskey);
+        byte[] src = str.getBytes("utf-8");
+        // 加密,结果保存进cipherByte
+        cipherByte = c.doFinal(src);
+        return Base64.encodeBase64String(cipherByte);
+    }
+
+    /**
+     * 对字符串解密
+     *
+     * @param str
+     * @return
+     * @throws InvalidKeyException
+     * @throws IllegalBlockSizeException
+     * @throws BadPaddingException
+     */
+    public String decryptor(String str) throws InvalidKeyException,
+            IllegalBlockSizeException, BadPaddingException, UnsupportedEncodingException {
+        byte[] buff = Base64.decodeBase64(str);
+        // 根据密钥,对Cipher对象进行初始化,DECRYPT_MODE表示加密模式
+        c.init(Cipher.DECRYPT_MODE, deskey);
+        cipherByte = c.doFinal(buff);
+        return new String(cipherByte, "utf-8");
+    }
+}
+