|
@@ -17,6 +17,7 @@ public class ReadNeo4jData2Neo4j{
|
|
|
public static PropertiesUtil propertiesUtil = new PropertiesUtil("query.properties");
|
|
|
public static void main(String[] args) {
|
|
|
String[] diseaseArray ={"慢性胃炎","急性胰腺炎","心脏病","肺部感染"};
|
|
|
+// String[] diseaseArray ={"肺部感染"};
|
|
|
NodeRelationUtil nodeRelationUtil = new NodeRelationUtil();
|
|
|
Driver driver233 = nodeRelationUtil.getDriver();//读
|
|
|
Driver driver232 = nodeRelationUtil.get232Driver();//写
|
|
@@ -45,7 +46,6 @@ public class ReadNeo4jData2Neo4j{
|
|
|
List<String> diseaseNameList;
|
|
|
String queryWord;
|
|
|
StatementResult resultSet;
|
|
|
-
|
|
|
diseaseNameList = new ArrayList<String>(Arrays.asList(diseaseArray));
|
|
|
for (String diseaseName:diseaseNameList) {
|
|
|
nodeRelationUtil.AddNode(driver,0,"Disease",diseaseName.replace("\"",""));//添加疾病
|
|
@@ -53,15 +53,42 @@ public class ReadNeo4jData2Neo4j{
|
|
|
resultSet = session.run(queryWord);
|
|
|
while (resultSet.hasNext()){
|
|
|
Record record = resultSet.next();
|
|
|
- String drug = record.get("drug").toString();//药类
|
|
|
- String label = record.get("label").toString();//类型
|
|
|
- int p = Integer.parseInt(record.get("p").toString());//药类的排序
|
|
|
+ String drug = record.get("drug").toString().replace("\"","");//药类
|
|
|
+ String label = record.get("label").toString().replace("\"","");//类型
|
|
|
int p1 = record.get("p").asInt();
|
|
|
List<Object> collectName = record.get("collectName").asList();
|
|
|
- System.out.println(drug+"\t"+label+"\t"+p+"\t"+collectName);
|
|
|
+ String s = collectName.get(0).toString();
|
|
|
+ nodeRelationUtil.AddNode(driver,0,"Drugs",drug);
|
|
|
+ nodeRelationUtil.addRelationWithProperty(driver,"Disease",diseaseName.replace("\"",""),"推荐",p1,"Drugs",drug);
|
|
|
+ for (Object o:collectName) {
|
|
|
+ String medicationName = o.toString();
|
|
|
+ nodeRelationUtil.AddNode(driver,0,"Medicine",medicationName);
|
|
|
+ nodeRelationUtil.addRelation(driver,0,"Drugs",drug,"包含","Medicine",medicationName);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ queryWord = propertiesUtil.getProperty("diseaseMedication").replace("diseaseName",diseaseName);
|
|
|
+ resultSet = session.run(queryWord);
|
|
|
+ while (resultSet.hasNext()){
|
|
|
+ Record record = resultSet.next();
|
|
|
+ double p1 = record.get("p").asDouble();
|
|
|
+ String medication = record.get("collectName").toString().replace("\"","");//类型
|
|
|
+ nodeRelationUtil.AddNode(driver,0,"Medicine",medication);
|
|
|
+ nodeRelationUtil.addRelationWithPropertyDouble(driver,"Disease",diseaseName.replace("\"",""),"推荐",p1,"Medicine",medication);
|
|
|
+ }
|
|
|
+ queryWord = propertiesUtil.getProperty("bigDrugAndSubDrugs").replace("diseaseName",diseaseName);
|
|
|
+ resultSet = session.run(queryWord);
|
|
|
+ while (resultSet.hasNext()){
|
|
|
+ Record record = resultSet.next();
|
|
|
+ String bigDrugs = record.get("big").toString().replace("\"","");//大类型
|
|
|
+ String subDrugs = record.get("sub").toString().replace("\"","");//小类型
|
|
|
+ nodeRelationUtil.AddNode(driver,0,"Drugs",bigDrugs);
|
|
|
+ nodeRelationUtil.AddNode(driver,0,"Drugs",subDrugs);
|
|
|
+ nodeRelationUtil.addRelation(driver,0,"Drugs",bigDrugs,"包含","Drugs",subDrugs);
|
|
|
+ nodeRelationUtil.addRelation(driver,0,"Disease",diseaseName.replace("\"",""),"推荐","Drugs",bigDrugs);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
private static void from233to232(String[] diseaseArray,NodeRelationUtil nodeRelationUtil, Driver driver232, Session session) {
|
|
|
List<String> diseaseList;
|
|
|
String query;
|