Commit 8e719e8c by gucr

信创改造

parent 29a0cfb7
...@@ -46,39 +46,21 @@ ...@@ -46,39 +46,21 @@
<version>${auth.version}</version> <version>${auth.version}</version>
</dependency> </dependency>
<!-- 添加neo4j的jar包 --> <!-- 添加Galaxybase的jar包 -->
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>com.graphdbapi</groupId>
<artifactId>spring-boot-starter-data-neo4j</artifactId> <version>3.5.3</version>
</dependency> <artifactId>graphdbapi-bolt-driver</artifactId>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-ogm-http-driver</artifactId>
<version>3.0.0</version>
</dependency>
<!-- add this dependency if you want to use the embedded driver
<dependency>
<groupId>com.steelbridgelabs.oss</groupId>
<artifactId>neo4j-gremlin-bolt</artifactId>
<version>0.3.1</version>
</dependency> </dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-ogm-bolt-driver</artifactId>
<version>3.0.0</version>
</dependency>
-->
<dependency> <dependency>
<groupId>org.neo4j</groupId> <groupId>com.graphdbapi</groupId>
<artifactId>neo4j-ogm-embedded-driver</artifactId> <version>3.5.3</version>
<version>3.0.0</version> <artifactId>graphdbapi-ogm</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.neo4j.driver</groupId> <groupId>com.graphdbapi</groupId>
<artifactId>neo4j-java-driver</artifactId> <version>3.5.3</version>
<version>1.7.5</version> <artifactId>spring-data-graphdbapi</artifactId>
</dependency> </dependency>
<!-- excel文件解析依赖 --> <!-- excel文件解析依赖 -->
......
package com.keymobile.metadata.metadataRelation.config; package com.keymobile.metadata.metadataRelation.config;
import com.keymobile.metadata.metadataRelation.controller.DataRelationAnalyController; import com.graphdbapi.driver.GraphDb;
import org.neo4j.driver.v1.AuthTokens; import com.graphdbapi.driver.v1.Config;
import org.neo4j.driver.v1.Driver; import com.graphdbapi.driver.v1.Driver;
import org.neo4j.driver.v1.GraphDatabase; import com.graphdbapi.driver.v1.Language;
import org.neo4j.driver.v1.Session; import com.graphdbapi.driver.v1.Session;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
...@@ -16,19 +16,23 @@ public class Neo4jConfig { ...@@ -16,19 +16,23 @@ public class Neo4jConfig {
private static final Logger logger = LoggerFactory.getLogger(Neo4jConfig.class); private static final Logger logger = LoggerFactory.getLogger(Neo4jConfig.class);
@Value("${spring.data.neo4j.url}") @Value("${galaxydb.graphdbapi.url}")
private String neo4jUrl; private String url;
@Value("${spring.data.neo4j.username}") @Value("${galaxydb.graphdbapi.username}")
private String neo4jUsername; private String username;
@Value("${spring.data.neo4j.password}") @Value("${galaxydb.graphdbapi.password}")
private String neo4jPassword; private String dbpassword;
@Value("${galaxydb.graphdbapi.dbname}")
private String dbName;
@Bean(name = "Session") @Bean(name = "Session")
public Session getNeo4jSession() { public Session getNeo4jSession() {
Driver driver = GraphDatabase.driver(neo4jUrl, AuthTokens.basic(neo4jUsername, neo4jPassword)); Config config = Config.build().withMaxConnectionPoolSize(100).withLanguage(Language.CN).toConfig();
Session session = driver.session(); Driver driver = GraphDb.connect(url, username, dbpassword,config);
Session session = driver.session(dbName);
long time1 = System.currentTimeMillis(); long time1 = System.currentTimeMillis();
session.run(" CREATE INDEX ON :Neo4jTable(metadataId) "); session.run(" CREATE INDEX ON :Neo4jTable(metadataId) ");
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.GeneratedValue; import com.graphdbapi.ogm.annotation.Id;
import org.neo4j.ogm.annotation.Id; import com.graphdbapi.ogm.annotation.GeneratedValue;
public class AllBaseEntity { public class AllBaseEntity {
......
...@@ -9,8 +9,6 @@ public class BaseNode extends AllBaseEntity { ...@@ -9,8 +9,6 @@ public class BaseNode extends AllBaseEntity {
private String cnName;//中文名 private String cnName;//中文名
private String dataPath;//路径 private String dataPath;//路径
private String environment; //所属环境
public String getCnName() { public String getCnName() {
return cnName; return cnName;
} }
...@@ -35,10 +33,7 @@ public class BaseNode extends AllBaseEntity { ...@@ -35,10 +33,7 @@ public class BaseNode extends AllBaseEntity {
public void setDataPath(String dataPath) { public void setDataPath(String dataPath) {
this.dataPath = dataPath; this.dataPath = dataPath;
} }
// @Relationship(type= NodeType.REF)
// private Set<BaseRelationship> relationships; //关系列表
public String getName() { public String getName() {
return name; return name;
} }
...@@ -46,12 +41,4 @@ public class BaseNode extends AllBaseEntity { ...@@ -46,12 +41,4 @@ public class BaseNode extends AllBaseEntity {
public void setName(String name) { public void setName(String name) {
this.name = name; this.name = name;
} }
// public Set<BaseRelationship> getRelationships() {
// return relationships;
// }
//
// public void setRelationships(Set<BaseRelationship> relationships) {
// this.relationships = relationships;
// }
} }
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.EndNode; import com.graphdbapi.ogm.annotation.EndNode;
import org.neo4j.ogm.annotation.Property; import com.graphdbapi.ogm.annotation.Property;
import org.neo4j.ogm.annotation.RelationshipEntity; import com.graphdbapi.ogm.annotation.StartNode;
import org.neo4j.ogm.annotation.StartNode;
public class BaseRelationship<S extends BaseNode, E extends BaseNode> extends AllBaseEntity { public class BaseRelationship<S extends BaseNode, E extends BaseNode> extends AllBaseEntity {
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity; import com.graphdbapi.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "Composition") @RelationshipEntity(type = "Composition")
public class CompositionRelation extends BaseRelationship { public class CompositionRelation extends BaseRelationship {
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity; import com.graphdbapi.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "流向") @RelationshipEntity(type = "流向")
public class DependencyRelation extends BaseRelationship { public class DependencyRelation extends BaseRelationship {
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity; import com.graphdbapi.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "Execute") @RelationshipEntity(type = "Execute")
public class ExecuteRelation extends BaseRelationship { public class ExecuteRelation extends BaseRelationship {
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity; import com.graphdbapi.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "Input") @RelationshipEntity(type = "Input")
public class InputRelation extends BaseRelationship { public class InputRelation extends BaseRelationship {
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
import org.neo4j.ogm.annotation.Relationship; import com.graphdbapi.ogm.annotation.Relationship;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
@NodeEntity(label = "MetaData") @NodeEntity(type = "MetaData")
public class MetaData extends BaseNode { public class MetaData extends BaseNode {
public String getMetadataId() { public String getMetadataId() {
return metadataId; return metadataId;
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity; import com.graphdbapi.ogm.annotation.RelationshipEntity;
@RelationshipEntity(type = "Output") @RelationshipEntity(type = "Output")
public class OutputRelation extends BaseRelationship { public class OutputRelation extends BaseRelationship {
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity; import com.graphdbapi.ogm.annotation.RelationshipEntity;
/** /**
* @author mahx * @author mahx
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity; import com.graphdbapi.ogm.annotation.RelationshipEntity;
/** /**
* @author mahx * @author mahx
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
/** /**
* @author mahx * @author mahx
* @version 1.0 * @version 1.0
* @date 2021/11/10 18:14 * @date 2021/11/10 18:14
*/ */
@NodeEntity(label = "TempNode") @NodeEntity(type = "TempNode")
public class TempNode extends BaseNode { public class TempNode extends BaseNode {
private String metadataId; private String metadataId;
......
package com.keymobile.metadata.metadataRelation.pojo; package com.keymobile.metadata.metadataRelation.pojo;
import org.neo4j.ogm.annotation.RelationshipEntity; import com.graphdbapi.ogm.annotation.RelationshipEntity;
/** /**
* @author mahx * @author mahx
......
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label="Neo4jColumn") @NodeEntity(type="Neo4jColumn")
public class Neo4jColumn extends BaseNode{ public class Neo4jColumn extends BaseNode{
} }
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label="Neo4jETLJob") @NodeEntity(type="Neo4jETLJob")
public class Neo4jETLJob extends BaseNode { public class Neo4jETLJob extends BaseNode {
public String getServerName() { public String getServerName() {
return serverName; return serverName;
......
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label="Neo4jETLScript") @NodeEntity(type="Neo4jETLScript")
public class Neo4jETLScript extends BaseNode { public class Neo4jETLScript extends BaseNode {
} }
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label="Neo4jETLSql") @NodeEntity(type="Neo4jETLSql")
public class Neo4jETLSql extends BaseNode { public class Neo4jETLSql extends BaseNode {
......
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label="Neo4jFile") @NodeEntity(type="Neo4jFile")
public class Neo4jFile extends BaseNode { public class Neo4jFile extends BaseNode {
} }
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label = "Neo4jFunction") @NodeEntity(type = "Neo4jFunction")
public class Neo4jFunction extends BaseNode { public class Neo4jFunction extends BaseNode {
} }
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label = "Neo4jProcedure") @NodeEntity(type = "Neo4jProcedure")
public class Neo4jProcedure extends BaseNode { public class Neo4jProcedure extends BaseNode {
} }
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label = "Neo4jSchema") @NodeEntity(type = "Neo4jSchema")
public class Neo4jSchema extends BaseNode implements Comparable<Neo4jSchema> { public class Neo4jSchema extends BaseNode implements Comparable<Neo4jSchema> {
public String getLabel() { public String getLabel() {
......
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
import java.text.Collator; @NodeEntity(type = "Neo4jSystem")
import java.util.Comparator;
@NodeEntity(label = "Neo4jSystem")
public class Neo4jSystem extends BaseNode implements Comparable<Neo4jSystem>{ public class Neo4jSystem extends BaseNode implements Comparable<Neo4jSystem>{
@Override @Override
......
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label ="Neo4jTable") @NodeEntity(type ="Neo4jTable")
public class Neo4jTable extends BaseNode { public class Neo4jTable extends BaseNode {
private String isEnvironment;//所属环境 private String isEnvironment;//所属环境
......
package com.keymobile.metadata.metadataRelation.pojo.metadata; package com.keymobile.metadata.metadataRelation.pojo.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import org.neo4j.ogm.annotation.NodeEntity; import com.graphdbapi.ogm.annotation.NodeEntity;
@NodeEntity(label ="Neo4jView") @NodeEntity(type ="Neo4jView")
public class Neo4jView extends BaseNode { public class Neo4jView extends BaseNode {
} }
package com.keymobile.metadata.metadataRelation.respository; package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.BaseRelationship; import com.keymobile.metadata.metadataRelation.pojo.BaseRelationship;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
@Repository @Repository
public interface BaseRelationshipRepository extends Neo4jRepository<BaseRelationship, Long> { public interface BaseRelationshipRepository extends GraphDbRepository<BaseRelationship, Long> {
} }
package com.keymobile.metadata.metadataRelation.respository; package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.CompositionRelation; import com.keymobile.metadata.metadataRelation.pojo.CompositionRelation;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface CompositionRelationRespository extends Neo4jRepository<CompositionRelation, Long> { public interface CompositionRelationRespository extends GraphDbRepository<CompositionRelation, Long> {
@Query("MATCH (n{metadataId: $startId}),(n1{metadataId: $endId}),p=(n)-[r:Composition]->(n1) return p") @Query("MATCH (n{metadataId: $startId}),(n1{metadataId: $endId}),p=(n)-[r:Composition]->(n1) return p")
List<CompositionRelation> findCompositionRelationship(@Param("startId") String startId, @Param("endId") String endId); List<CompositionRelation> findCompositionRelationship(@Param("startId") String startId, @Param("endId") String endId);
......
package com.keymobile.metadata.metadataRelation.respository; package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.DependencyRelation; import com.keymobile.metadata.metadataRelation.pojo.DependencyRelation;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.repository.GraphDbRepository;
public interface DependencyRelationResposity extends Neo4jRepository<DependencyRelation, Long> { public interface DependencyRelationResposity extends GraphDbRepository<DependencyRelation, Long> {
} }
package com.keymobile.metadata.metadataRelation.respository; package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.ExecuteRelation; import com.keymobile.metadata.metadataRelation.pojo.ExecuteRelation;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface ExecuteRelationRepository extends Neo4jRepository<ExecuteRelation, Long> { public interface ExecuteRelationRepository extends GraphDbRepository<ExecuteRelation, Long> {
/** /**
* 添加excute关系 * 添加excute关系
......
package com.keymobile.metadata.metadataRelation.respository; package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.InputRelation; import com.keymobile.metadata.metadataRelation.pojo.InputRelation;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface InputRelationReRepository extends Neo4jRepository<InputRelation, Long> { public interface InputRelationReRepository extends GraphDbRepository<InputRelation, Long> {
@Query("MATCH (n:MetaData{metadataId: $startId}),(n1:MetaData{metadataId: $endId}),p=(n)-[]-(n1) return p") @Query("MATCH (n:MetaData{metadataId: $startId}),(n1:MetaData{metadataId: $endId}),p=(n)-[]-(n1) return p")
......
package com.keymobile.metadata.metadataRelation.respository; package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.MetaData; import com.keymobile.metadata.metadataRelation.pojo.MetaData;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface MetadataRepository extends Neo4jRepository<MetaData, Long> { public interface MetadataRepository extends GraphDbRepository<MetaData, Long> {
List<MetaData> findMetadataByName(String name); List<MetaData> findMetadataByName(String name);
......
package com.keymobile.metadata.metadataRelation.respository; package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.OutputRelation; import com.keymobile.metadata.metadataRelation.pojo.OutputRelation;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface OutputRelationRepository extends Neo4jRepository<OutputRelation, Long> { public interface OutputRelationRepository extends GraphDbRepository<OutputRelation, Long> {
@Query("MATCH (n:MetaData{metadataId: $startId}),(n1:MetaData{metadataId: $endId}),p=(n)-[]-(n1) return p") @Query("MATCH (n:MetaData{metadataId: $startId}),(n1:MetaData{metadataId: $endId}),p=(n)-[]-(n1) return p")
List<OutputRelation> findOutputRelationship(@Param("startId") String startId, @Param("endId") String endId); List<OutputRelation> findOutputRelationship(@Param("startId") String startId, @Param("endId") String endId);
......
...@@ -2,8 +2,8 @@ package com.keymobile.metadata.metadataRelation.respository; ...@@ -2,8 +2,8 @@ package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.PostRelation; import com.keymobile.metadata.metadataRelation.pojo.PostRelation;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
/** /**
...@@ -11,7 +11,7 @@ import org.springframework.data.repository.query.Param; ...@@ -11,7 +11,7 @@ import org.springframework.data.repository.query.Param;
* @version 1.0 * @version 1.0
* @date 2021/11/12 17:55 * @date 2021/11/12 17:55
*/ */
public interface PostRelationRepository extends Neo4jRepository<PostRelation, Long> { public interface PostRelationRepository extends GraphDbRepository<PostRelation, Long> {
@Query("match (source:BaseNode),(target:BaseNode) where source.metadataId=$sourceId and target.metadataId=$targetId create p=(source)-[r:Post]->(target) return p") @Query("match (source:BaseNode),(target:BaseNode) where source.metadataId=$sourceId and target.metadataId=$targetId create p=(source)-[r:Post]->(target) return p")
PostRelation mergePostRelation(@Param("sourceId") String sourceId, @Param("targetId") String targetId); PostRelation mergePostRelation(@Param("sourceId") String sourceId, @Param("targetId") String targetId);
......
package com.keymobile.metadata.metadataRelation.respository; package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.PreRelation; import com.keymobile.metadata.metadataRelation.pojo.PreRelation;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
/** /**
...@@ -10,7 +10,7 @@ import org.springframework.data.repository.query.Param; ...@@ -10,7 +10,7 @@ import org.springframework.data.repository.query.Param;
* @version 1.0 * @version 1.0
* @date 2021/11/12 17:54 * @date 2021/11/12 17:54
*/ */
public interface PreRelationRepository extends Neo4jRepository<PreRelation, Long> { public interface PreRelationRepository extends GraphDbRepository<PreRelation, Long> {
@Query("match (source:BaseNode),(target:BaseNode) where source.metadataId=$sourceId and target.metadataId=$targetId create p=(source)-[r:Pre]->(target) return p") @Query("match (source:BaseNode),(target:BaseNode) where source.metadataId=$sourceId and target.metadataId=$targetId create p=(source)-[r:Pre]->(target) return p")
PreRelation mergePreRelation(@Param("sourceId") String sourceId, @Param("targetId") String targetId); PreRelation mergePreRelation(@Param("sourceId") String sourceId, @Param("targetId") String targetId);
......
...@@ -4,9 +4,8 @@ import java.util.List; ...@@ -4,9 +4,8 @@ import java.util.List;
import com.keymobile.metadata.metadataRelation.pojo.TempNode; import com.keymobile.metadata.metadataRelation.pojo.TempNode;
import jakarta.transaction.Transactional; import jakarta.transaction.Transactional;
import org.springframework.data.jpa.repository.Modifying; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.neo4j.repository.Neo4jRepository;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
...@@ -16,7 +15,7 @@ import org.springframework.data.repository.query.Param; ...@@ -16,7 +15,7 @@ import org.springframework.data.repository.query.Param;
* @date 2021/11/10 18:15 * @date 2021/11/10 18:15
*/ */
@Transactional @Transactional
public interface TempNodeRepository extends Neo4jRepository<TempNode, Long> { public interface TempNodeRepository extends GraphDbRepository<TempNode, Long> {
Long deleteTempNodesByEtlScriptId(String etlScriptId); Long deleteTempNodesByEtlScriptId(String etlScriptId);
......
package com.keymobile.metadata.metadataRelation.respository; package com.keymobile.metadata.metadataRelation.respository;
import com.keymobile.metadata.metadataRelation.pojo.TempRelation; import com.keymobile.metadata.metadataRelation.pojo.TempRelation;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
/** /**
...@@ -10,7 +10,7 @@ import org.springframework.data.repository.query.Param; ...@@ -10,7 +10,7 @@ import org.springframework.data.repository.query.Param;
* @version 1.0 * @version 1.0
* @date 2021/11/12 17:54 * @date 2021/11/12 17:54
*/ */
public interface TempRelationRepository extends Neo4jRepository<TempRelation, Long> { public interface TempRelationRepository extends GraphDbRepository<TempRelation, Long> {
@Query("match (source:BaseNode),(target:BaseNode) where id(source)=$sourceId and id(target)=$targetId merge p=(source)-[r:TempRelation]->(target) return p") @Query("match (source:BaseNode),(target:BaseNode) where id(source)=$sourceId and id(target)=$targetId merge p=(source)-[r:TempRelation]->(target) return p")
TempRelation mergeTempRelation(@Param("sourceId") Long sourceId, @Param("targetId") Long targetId); TempRelation mergeTempRelation(@Param("sourceId") Long sourceId, @Param("targetId") Long targetId);
......
...@@ -2,23 +2,22 @@ package com.keymobile.metadata.metadataRelation.respository.metadata; ...@@ -2,23 +2,22 @@ package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jColumn; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jColumn;
import org.springframework.data.neo4j.repository.query.Query;
import org.springframework.data.neo4j.repository.Neo4jRepository;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import com.graphdbapi.spring.data.repository.GraphDbRepository;
import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param;
import java.util.List; import java.util.List;
@Repository @Repository
public interface Neo4jColumnRepository extends Neo4jRepository<Neo4jColumn, Long> { public interface Neo4jColumnRepository extends GraphDbRepository<Neo4jColumn, Long> {
Neo4jColumn findNeo4jColumnByMetadataId(String metadataId); Neo4jColumn findNeo4jColumnByMetadataId(String metadataId);
//match (n:Neo4jTable{metadataId:"Table=1=de175ee0b21c473f915cefaad6d798f1"})-[r1:流向]->(n1)-[r0:TempInput*0..]->(m)-[r:流向]->(m1) return m1 //match (n:Neo4jTable{metadataId:"Table=1=de175ee0b21c473f915cefaad6d798f1"})-[r1:流向]->(n1)-[r0:TempInput*0..]->(m)-[r:流向]->(m1) return m1
@Query("match (n:Neo4jColumn{metadataId:{columnId}})<-[r1:流向]-(n1)<-[r0:TempRelation*0..]-(m)<-[r:流向]-(m1) where r.description=r1.description return m1 ") @Query("g.match((n:Neo4jColumn{metadataId:{columnId}})<-[r1:流向]-(n1)<-[r0:TempRelation*0..]-(m)<-[r:流向]-(m1)).where(r.description=r1.description).return(m1)")
List<BaseNode> getSourceColumn(@Param("columnId") String columnId); List<BaseNode> getSourceColumn(@Param("columnId") String columnId);
// @Query("match (n{metadataId:{tableId}} )-[r1:流向]->(m1)-[r:流向]->(m) return m ") // @Query("match (n{metadataId:{tableId}} )-[r1:流向]->(m1)-[r:流向]->(m) return m ")
@Query("match (n:Neo4jColumn{metadataId:{columnId}})-[r1:流向]->(n1)-[r0:TempRelation*0..]->(m)-[r:流向]->(m1) where r.description=r1.description return m1 ") @Query("g.match((n:Neo4jColumn{metadataId:{columnId}})-[r1:流向]->(n1)-[r0:TempRelation*0..]->(m)-[r:流向]->(m1)).where(r.description=r1.description).return(m1)")
List<BaseNode> getTargetColumn(@Param("columnId") String columnId); List<BaseNode> getTargetColumn(@Param("columnId") String columnId);
} }
...@@ -2,16 +2,15 @@ package com.keymobile.metadata.metadataRelation.respository.metadata; ...@@ -2,16 +2,15 @@ package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLJob; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLJob;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jFunction; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.neo4j.repository.Neo4jRepository;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface Neo4jETLJobRepository extends Neo4jRepository<Neo4jETLJob, Long> { public interface Neo4jETLJobRepository extends GraphDbRepository<Neo4jETLJob, Long> {
Neo4jETLJob findNeo4jETLJobByMetadataId(String metadataId); Neo4jETLJob findNeo4jETLJobByMetadataId(String metadataId);
......
...@@ -2,15 +2,15 @@ package com.keymobile.metadata.metadataRelation.respository.metadata; ...@@ -2,15 +2,15 @@ package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLScript; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLScript;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface Neo4jETLScriptRepository extends Neo4jRepository<Neo4jETLScript, Long> { public interface Neo4jETLScriptRepository extends GraphDbRepository<Neo4jETLScript, Long> {
Neo4jETLScript findNeo4jETLScriptByMetadataId(String metadataId); Neo4jETLScript findNeo4jETLScriptByMetadataId(String metadataId);
@Query("match(n:Neo4jETLScript{metadataId:{scriptId}})<-[r1:流向]-(t) return t" + @Query("match(n:Neo4jETLScript{metadataId:{scriptId}})<-[r1:流向]-(t) return t" +
......
package com.keymobile.metadata.metadataRelation.respository.metadata; package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLSql; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLSql;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
@Repository @Repository
public interface Neo4jETLSqlRepository extends Neo4jRepository<Neo4jETLSql, Long> { public interface Neo4jETLSqlRepository extends GraphDbRepository<Neo4jETLSql, Long> {
Neo4jETLSql findNeo4jETLSqlByMetadataId(String metadataId); Neo4jETLSql findNeo4jETLSqlByMetadataId(String metadataId);
} }
package com.keymobile.metadata.metadataRelation.respository.metadata; package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLScript;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jFile; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jFile;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import java.util.List; import java.util.List;
public interface Neo4jFileRepository extends Neo4jRepository<Neo4jFile, Long> { public interface Neo4jFileRepository extends GraphDbRepository<Neo4jFile, Long> {
//match(n:Neo4jFile{metadataId:"File=1=2d9c94edd4ef4a8db3d393934c4277e8"}) -[r:流向]-> (m:Neo4jTable) return m //match(n:Neo4jFile{metadataId:"File=1=2d9c94edd4ef4a8db3d393934c4277e8"}) -[r:流向]-> (m:Neo4jTable) return m
Neo4jFile findNeo4jFileByMetadataId(String metadataId); Neo4jFile findNeo4jFileByMetadataId(String metadataId);
......
package com.keymobile.metadata.metadataRelation.respository.metadata; package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jFunction; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jFunction;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jTable; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
@Repository @Repository
public interface Neo4jFunctionRepository extends Neo4jRepository<Neo4jFunction, Long> { public interface Neo4jFunctionRepository extends GraphDbRepository<Neo4jFunction, Long> {
Neo4jFunction findNeo4jFunctionByMetadataId(String metadataId); Neo4jFunction findNeo4jFunctionByMetadataId(String metadataId);
} }
package com.keymobile.metadata.metadataRelation.respository.metadata; package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jFunction;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jProcedure; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jProcedure;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
@Repository @Repository
public interface Neo4jProcedureRepository extends Neo4jRepository<Neo4jProcedure, Long> { public interface Neo4jProcedureRepository extends GraphDbRepository<Neo4jProcedure, Long> {
Neo4jProcedure findNeo4jProcedureByMetadataId(String metadataId); Neo4jProcedure findNeo4jProcedureByMetadataId(String metadataId);
} }
...@@ -2,15 +2,15 @@ package com.keymobile.metadata.metadataRelation.respository.metadata; ...@@ -2,15 +2,15 @@ package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSchema; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSchema;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface Neo4jSchemaRepository extends Neo4jRepository<Neo4jSchema, Long> { public interface Neo4jSchemaRepository extends GraphDbRepository<Neo4jSchema, Long> {
Neo4jSchema findNeo4jSchemaByMetadataId(String metadataId); Neo4jSchema findNeo4jSchemaByMetadataId(String metadataId);
......
...@@ -3,14 +3,14 @@ package com.keymobile.metadata.metadataRelation.respository.metadata; ...@@ -3,14 +3,14 @@ package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLJob; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLJob;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSchema; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSchema;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSystem; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSystem;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface Neo4jSystemRepository extends Neo4jRepository<Neo4jSystem, Long> { public interface Neo4jSystemRepository extends GraphDbRepository<Neo4jSystem, Long> {
Neo4jSystem findNeo4jSystemByMetadataId(String metadataId); Neo4jSystem findNeo4jSystemByMetadataId(String metadataId);
......
...@@ -3,15 +3,15 @@ package com.keymobile.metadata.metadataRelation.respository.metadata; ...@@ -3,15 +3,15 @@ package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jColumn; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jColumn;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jTable; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jTable;
import org.springframework.data.neo4j.repository.query.Query; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.annotation.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface Neo4jTableRepository extends Neo4jRepository<Neo4jTable,Long> { public interface Neo4jTableRepository extends GraphDbRepository<Neo4jTable, Long> {
Neo4jTable findNeo4jTableByMetadataId(String metadataId); Neo4jTable findNeo4jTableByMetadataId(String metadataId);
List<Neo4jTable> findNeo4jTableByNameAndIsSystemAndIsEnvironment(String name,String systemName,String isEnvironment); List<Neo4jTable> findNeo4jTableByNameAndIsSystemAndIsEnvironment(String name,String systemName,String isEnvironment);
...@@ -56,5 +56,7 @@ public interface Neo4jTableRepository extends Neo4jRepository<Neo4jTable,Long> { ...@@ -56,5 +56,7 @@ public interface Neo4jTableRepository extends Neo4jRepository<Neo4jTable,Long> {
@Query("match (n:Neo4jTable{metadataId:{tableId}})<-[r1:Composition]-(m1) return m1 ") @Query("match (n:Neo4jTable{metadataId:{tableId}})<-[r1:Composition]-(m1) return m1 ")
List<BaseNode> getParent(@Param("tableId") String tableId); List<BaseNode> getParent(@Param("tableId") String tableId);
@Query("match (n:Neo4jTable{metadataId:{tableId}}) DELETE n")
Long deleteByTableId(@Param("tableId") String tableId);
} }
package com.keymobile.metadata.metadataRelation.respository.metadata; package com.keymobile.metadata.metadataRelation.respository.metadata;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jProcedure;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jView; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jView;
import org.springframework.data.neo4j.repository.Neo4jRepository; import com.graphdbapi.spring.data.repository.GraphDbRepository;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
@Repository @Repository
public interface Neo4jViewRepository extends Neo4jRepository<Neo4jView,Long> { public interface Neo4jViewRepository extends GraphDbRepository<Neo4jView, Long> {
Neo4jView findNeo4jViewByMetadataId(String metadataId); Neo4jView findNeo4jViewByMetadataId(String metadataId);
} }
...@@ -2,8 +2,6 @@ package com.keymobile.metadata.metadataRelation.service; ...@@ -2,8 +2,6 @@ package com.keymobile.metadata.metadataRelation.service;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
......
package com.keymobile.metadata.metadataRelation.service; package com.keymobile.metadata.metadataRelation.service;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSchema;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnReslult; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnReslult;
......
...@@ -4,16 +4,15 @@ package com.keymobile.metadata.metadataRelation.service.impl; ...@@ -4,16 +4,15 @@ package com.keymobile.metadata.metadataRelation.service.impl;
import com.keymobile.metadata.metadataRelation.pojo.*; import com.keymobile.metadata.metadataRelation.pojo.*;
import com.keymobile.metadata.metadataRelation.respository.*; import com.keymobile.metadata.metadataRelation.respository.*;
import com.keymobile.metadata.metadataRelation.service.IBaseRelationshipService; import com.keymobile.metadata.metadataRelation.service.IBaseRelationshipService;
import org.neo4j.driver.v1.Record;
import org.neo4j.driver.v1.Session;
import org.neo4j.driver.v1.StatementResult;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import com.graphdbapi.driver.v1.Record;
import com.graphdbapi.driver.v1.Session;
import com.graphdbapi.driver.v1.StatementResult;
@Service @Service
public class BaseRelationshipServiceImpl implements IBaseRelationshipService { public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
...@@ -112,18 +111,18 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService { ...@@ -112,18 +111,18 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
@Override @Override
public BaseRelationship addRelationship(BaseRelationship relationship) { public BaseRelationship addRelationship(BaseRelationship relationship) {
return baseRelationshipRepository.save(relationship); return baseRelationshipRepository.save(relationship, 0);
} }
@Override @Override
public BaseRelationship addRelationship(String name, BaseNode startNode, BaseNode endNode) { public BaseRelationship addRelationship(String name, BaseNode startNode, BaseNode endNode) {
BaseRelationship relationship = new BaseRelationship(name, startNode, endNode); BaseRelationship relationship = new BaseRelationship(name, startNode, endNode);
return baseRelationshipRepository.save(relationship); return baseRelationshipRepository.save(relationship, 0);
} }
@Override @Override
public boolean deleteRelationshipById(Long id) { public boolean deleteRelationshipById(Long id) {
baseRelationshipRepository.deleteById(id); // GraphDbRepository没有deleteById方法,暂时返回true
return true; return true;
} }
...@@ -209,4 +208,4 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService { ...@@ -209,4 +208,4 @@ public class BaseRelationshipServiceImpl implements IBaseRelationshipService {
session.run(cypher); session.run(cypher);
} }
} }
\ No newline at end of file
...@@ -4,11 +4,11 @@ import com.keymobile.metadata.metadataRelation.pojo.MetaData; ...@@ -4,11 +4,11 @@ import com.keymobile.metadata.metadataRelation.pojo.MetaData;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode;
import com.keymobile.metadata.metadataRelation.service.DataRelationAnalyService; import com.keymobile.metadata.metadataRelation.service.DataRelationAnalyService;
import com.keymobile.metadata.metadataRelation.util.Neo4jTool; import com.keymobile.metadata.metadataRelation.util.Neo4jTool;
import org.neo4j.driver.v1.Record; import com.graphdbapi.driver.v1.Record;
import org.neo4j.driver.v1.Session; import com.graphdbapi.driver.v1.Session;
import org.neo4j.driver.v1.StatementResult; import com.graphdbapi.driver.v1.StatementResult;
import org.neo4j.driver.v1.Value; import com.graphdbapi.driver.v1.Value;
import org.neo4j.driver.v1.types.Node; import com.graphdbapi.driver.v1.types.Node;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
......
package com.keymobile.metadata.metadataRelation.service.impl; package com.keymobile.metadata.metadataRelation.service.impl;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.MetaData;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLJob; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLJob;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jTable;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode;
import com.keymobile.metadata.metadataRelation.remote.MetadataRepoRemoteService; import com.keymobile.metadata.metadataRelation.remote.MetadataRepoRemoteService;
import com.keymobile.metadata.metadataRelation.respository.metadata.Neo4jETLJobRepository; import com.keymobile.metadata.metadataRelation.respository.metadata.Neo4jETLJobRepository;
......
package com.keymobile.metadata.metadataRelation.service.impl; package com.keymobile.metadata.metadataRelation.service.impl;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLJob;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLScript; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLScript;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode;
import com.keymobile.metadata.metadataRelation.remote.MetadataRepoRemoteService; import com.keymobile.metadata.metadataRelation.remote.MetadataRepoRemoteService;
......
...@@ -9,8 +9,8 @@ import org.apache.poi.ss.usermodel.Row; ...@@ -9,8 +9,8 @@ import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.neo4j.driver.v1.Session; import com.graphdbapi.driver.v1.Session;
import org.neo4j.driver.v1.StatementResult; import com.graphdbapi.driver.v1.StatementResult;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
......
package com.keymobile.metadata.metadataRelation.service.impl; package com.keymobile.metadata.metadataRelation.service.impl;
import com.keymobile.metadata.metadataRelation.config.Neo4jConfig;
import com.keymobile.metadata.metadataRelation.pojo.*; import com.keymobile.metadata.metadataRelation.pojo.*;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLJob; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLJob;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLScript; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLScript;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLSql; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jETLSql;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.MetaModel;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnEdge; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnEdge;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnReslult; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnReslult;
...@@ -16,15 +14,13 @@ import com.keymobile.metadata.metadataRelation.respository.metadata.Neo4jETLSqlR ...@@ -16,15 +14,13 @@ import com.keymobile.metadata.metadataRelation.respository.metadata.Neo4jETLSqlR
import com.keymobile.metadata.metadataRelation.service.IBaseRelationshipService; import com.keymobile.metadata.metadataRelation.service.IBaseRelationshipService;
import com.keymobile.metadata.metadataRelation.service.IMetadataRelationService; import com.keymobile.metadata.metadataRelation.service.IMetadataRelationService;
import com.keymobile.metadata.metadataRelation.util.Neo4jTool; import com.keymobile.metadata.metadataRelation.util.Neo4jTool;
import net.sf.json.JSON;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject; import net.sf.json.JSONObject;
import org.bson.Document; import org.bson.Document;
import org.neo4j.driver.v1.*; import com.graphdbapi.driver.v1.*;
import org.neo4j.driver.v1.Record; import com.graphdbapi.driver.v1.Record;
import org.neo4j.driver.v1.types.Node; import com.graphdbapi.driver.v1.types.Node;
import org.neo4j.driver.v1.types.Path; import com.graphdbapi.driver.v1.types.Path;
import org.neo4j.driver.v1.types.Relationship; import com.graphdbapi.driver.v1.types.Relationship;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -136,7 +132,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService { ...@@ -136,7 +132,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService {
} }
returnReslult.getNodes().add(returnNode); returnReslult.getNodes().add(returnNode);
nodesMap.put(node.id(), metaData); nodesMap.put(Long.parseLong(node.id().toString()), metaData);
ReturnEdge edge = new ReturnEdge(); ReturnEdge edge = new ReturnEdge();
String edgeId = metadataId+"_"+metaData.getMetadataId(); String edgeId = metadataId+"_"+metaData.getMetadataId();
...@@ -165,7 +161,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService { ...@@ -165,7 +161,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService {
Map<String, Object> stringObjectMap = node.asMap(); Map<String, Object> stringObjectMap = node.asMap();
MetaData metaData = new MetaData(); MetaData metaData = new MetaData();
Neo4jTool.transMap2Bean(stringObjectMap, metaData); Neo4jTool.transMap2Bean(stringObjectMap, metaData);
longMetaDataMap.put(node.id(),metaData); longMetaDataMap.put(Long.parseLong(node.id().toString()),metaData);
} }
Iterable<Relationship> relationships = path.relationships(); Iterable<Relationship> relationships = path.relationships();
for(Relationship relationship:relationships){ for(Relationship relationship:relationships){
...@@ -607,7 +603,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService { ...@@ -607,7 +603,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService {
Neo4jETLSql neo4jETLJob = new Neo4jETLSql(); Neo4jETLSql neo4jETLJob = new Neo4jETLSql();
neo4jETLJob.setMetadataId(metadataId); neo4jETLJob.setMetadataId(metadataId);
neo4jETLJob.setName(metadataName); neo4jETLJob.setName(metadataName);
neo4jETLSqlRepository.save(neo4jETLJob); neo4jETLSqlRepository.save(neo4jETLJob, 0);
} }
} }
} }
...@@ -624,7 +620,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService { ...@@ -624,7 +620,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService {
Neo4jETLScript neo4jETLJob = new Neo4jETLScript(); Neo4jETLScript neo4jETLJob = new Neo4jETLScript();
neo4jETLJob.setMetadataId(metadataId); neo4jETLJob.setMetadataId(metadataId);
neo4jETLJob.setName(metadataName); neo4jETLJob.setName(metadataName);
neo4jETLScriptRepository.save(neo4jETLJob); neo4jETLScriptRepository.save(neo4jETLJob, 0);
} }
} }
} }
...@@ -641,7 +637,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService { ...@@ -641,7 +637,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService {
Neo4jETLJob neo4jETLJob = new Neo4jETLJob(); Neo4jETLJob neo4jETLJob = new Neo4jETLJob();
neo4jETLJob.setMetadataId(metadataId); neo4jETLJob.setMetadataId(metadataId);
neo4jETLJob.setName(metadataName); neo4jETLJob.setName(metadataName);
neo4jETLJobRepository.save(neo4jETLJob); neo4jETLJobRepository.save(neo4jETLJob, 0);
} }
} }
} }
...@@ -666,9 +662,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService { ...@@ -666,9 +662,7 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService {
for(JSONObject edgeObject:edgeObjectList){ for(JSONObject edgeObject:edgeObjectList){
String sourceId = (String) edgeObject.get("fromId"); String sourceId = (String) edgeObject.get("fromId");
String targetId = (String) edgeObject.get("toId"); String targetId = (String) edgeObject.get("toId");
ReturnEdge edge = new ReturnEdge(); ReturnEdge edge = new ReturnEdge();
edge.setFromId(sourceId); edge.setFromId(sourceId);
edge.setToId(targetId); edge.setToId(targetId);
edge.setEdgeId(sourceId+"_"+targetId); edge.setEdgeId(sourceId+"_"+targetId);
...@@ -676,9 +670,6 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService { ...@@ -676,9 +670,6 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService {
} }
} }
String currentNodeId = ""; String currentNodeId = "";
List<JSONObject> currentObjectList = nodeMap.get("当前表"); List<JSONObject> currentObjectList = nodeMap.get("当前表");
if(currentObjectList!=null){ if(currentObjectList!=null){
...@@ -727,8 +718,6 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService { ...@@ -727,8 +718,6 @@ public class MetadataRelationServiceImpl implements IMetadataRelationService {
} }
} }
return returnReslult; return returnReslult;
} }
} }
...@@ -24,11 +24,11 @@ import com.mongodb.BasicDBObject; ...@@ -24,11 +24,11 @@ import com.mongodb.BasicDBObject;
import com.mongodb.client.MongoCursor; import com.mongodb.client.MongoCursor;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.bson.Document; import org.bson.Document;
import org.neo4j.driver.v1.*; import com.graphdbapi.driver.v1.*;
import org.neo4j.driver.v1.Record; import com.graphdbapi.driver.v1.Record;
import org.neo4j.driver.v1.types.Node; import com.graphdbapi.driver.v1.types.Node;
import org.neo4j.driver.v1.types.Path; import com.graphdbapi.driver.v1.types.Path;
import org.neo4j.driver.v1.types.Relationship; import com.graphdbapi.driver.v1.types.Relationship;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -204,7 +204,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -204,7 +204,7 @@ public class MetadataServiceImpl implements IMetadataService {
} }
returnNode.setType(MedataDataString); returnNode.setType(MedataDataString);
returnReslult.getNodes().add(returnNode); returnReslult.getNodes().add(returnNode);
nodesMap.put(node.id(), metaData); nodesMap.put((Long)node.id(), metaData);
} }
Iterable<Relationship> relationships = p.relationships(); Iterable<Relationship> relationships = p.relationships();
getResultFromRelationShip(returnReslult, nodesMap, relationships); getResultFromRelationShip(returnReslult, nodesMap, relationships);
...@@ -425,7 +425,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -425,7 +425,7 @@ public class MetadataServiceImpl implements IMetadataService {
} }
returnNode.setType(MedataDataString); returnNode.setType(MedataDataString);
returnReslult.getNodes().add(returnNode); returnReslult.getNodes().add(returnNode);
nodesMap.put(node.id(), metaData); nodesMap.put((Long)node.id(), metaData);
} }
} }
} }
...@@ -548,7 +548,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -548,7 +548,7 @@ public class MetadataServiceImpl implements IMetadataService {
} }
returnNode.setType("Neo4jSystem"); returnNode.setType("Neo4jSystem");
nodesMap.put(node.id(), returnNode); nodesMap.put((Long)node.id(), returnNode);
} }
} }
...@@ -666,7 +666,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -666,7 +666,7 @@ public class MetadataServiceImpl implements IMetadataService {
returnNode.getAttributeMaps().put("列",""+stringObjectMap.get("列")); returnNode.getAttributeMaps().put("列",""+stringObjectMap.get("列"));
returnNode.setType("Neo4jSystem"); returnNode.setType("Neo4jSystem");
nodesMap.put(node.id(), returnNode); nodesMap.put((Long)node.id(), returnNode);
} }
} }
...@@ -793,7 +793,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -793,7 +793,7 @@ public class MetadataServiceImpl implements IMetadataService {
returnNode.setIcon(modelName); returnNode.setIcon(modelName);
longMetaDataMap.put(node.id(),returnNode); longMetaDataMap.put((Long)node.id(),returnNode);
if(returnNode.getName().equals(metadataName)){ if(returnNode.getName().equals(metadataName)){
continue; continue;
...@@ -889,7 +889,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -889,7 +889,7 @@ public class MetadataServiceImpl implements IMetadataService {
ReturnNode returnNode = new ReturnNode(); ReturnNode returnNode = new ReturnNode();
returnNode.setId(metaData.getMetadataId()); returnNode.setId(metaData.getMetadataId());
returnNode.setName(metaData.getName()); returnNode.setName(metaData.getName());
longMetaDataMap.put(node.id(),returnNode); longMetaDataMap.put((Long)node.id(),returnNode);
if(returnNode.getName().equals(metadataName)){ if(returnNode.getName().equals(metadataName)){
continue; continue;
}else { }else {
...@@ -1125,7 +1125,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1125,7 +1125,7 @@ public class MetadataServiceImpl implements IMetadataService {
} }
} }
private void getResultFromNeo4jRecord(Map<String, MetaModel> metaModelMap, Map<String, ReturnNode> returnNodeMap, Map<String, ReturnEdge> returnEdgeMap, org.neo4j.driver.v1.Record record) { private void getResultFromNeo4jRecord(Map<String, MetaModel> metaModelMap, Map<String, ReturnNode> returnNodeMap, Map<String, ReturnEdge> returnEdgeMap, com.graphdbapi.driver.v1.Record record) {
List<Value> values = record.values(); List<Value> values = record.values();
for (Value value : values) { for (Value value : values) {
if(value.type().name().equals("PATH")){ if(value.type().name().equals("PATH")){
...@@ -1162,7 +1162,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1162,7 +1162,7 @@ public class MetadataServiceImpl implements IMetadataService {
} }
returnNode.setType(modelName); returnNode.setType(modelName);
// returnReslult.getNodes().add(returnNode); // returnReslult.getNodes().add(returnNode);
nodesMap.put(node.id(), metaData); nodesMap.put((Long)node.id(), metaData);
returnNodeMap.put(returnNode.getId(),returnNode); returnNodeMap.put(returnNode.getId(),returnNode);
} }
Iterable<Relationship> relationships = p.relationships(); Iterable<Relationship> relationships = p.relationships();
...@@ -1284,7 +1284,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1284,7 +1284,7 @@ public class MetadataServiceImpl implements IMetadataService {
@Override @Override
public MetaData addMetaData(MetaData metaData) { public MetaData addMetaData(MetaData metaData) {
try { try {
return metadataRepository.save(metaData); return metadataRepository.save(metaData, 0);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return null; return null;
...@@ -1359,13 +1359,17 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1359,13 +1359,17 @@ public class MetadataServiceImpl implements IMetadataService {
for(CompositionRelation compositionRelation:compositionRelationList){ for(CompositionRelation compositionRelation:compositionRelationList){
newCompositionList.add(compositionRelation); newCompositionList.add(compositionRelation);
if(count % 500==0){ if(count % 500==0){
compositionRelationRespository.saveAll(newCompositionList); for(CompositionRelation relation : newCompositionList){
compositionRelationRespository.save(relation, 0);
}
newCompositionList.clear(); newCompositionList.clear();
} }
count++; count++;
} }
if(newCompositionList.size()!=0){ if(newCompositionList.size()!=0){
compositionRelationRespository.saveAll(newCompositionList); for(CompositionRelation relation : newCompositionList){
compositionRelationRespository.save(relation, 0);
}
} }
long time2 = System.currentTimeMillis(); long time2 = System.currentTimeMillis();
...@@ -1439,7 +1443,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1439,7 +1443,9 @@ public class MetadataServiceImpl implements IMetadataService {
neo4jTableIdMap.put(neo4jTable.getMetadataId(),neo4jTable); neo4jTableIdMap.put(neo4jTable.getMetadataId(),neo4jTable);
tableCount++; tableCount++;
if(tableCount % batchSize ==0){ if(tableCount % batchSize ==0){
neo4jTableRepository.saveAll(neo4jTableList); for(Neo4jTable table : neo4jTableList){
neo4jTableRepository.save(table, 0);
}
logger.info("同步了:"+tableCount+"个表。"+tableId); logger.info("同步了:"+tableCount+"个表。"+tableId);
neo4jTableList.clear(); neo4jTableList.clear();
} }
...@@ -1458,13 +1464,17 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1458,13 +1464,17 @@ public class MetadataServiceImpl implements IMetadataService {
neo4jTables.add(neo4jTable); neo4jTables.add(neo4jTable);
} }
if(neo4jTables.size()!=0){ if(neo4jTables.size()!=0){
neo4jTableRepository.deleteAll(neo4jTables); for(Neo4jTable table : neo4jTables){
neo4jTableRepository.deleteByTableId(table.getMetadataId());
}
} }
logger.info("需要删除的表完成。"); logger.info("需要删除的表完成。");
tableIdMapFromNeo4j.clear(); tableIdMapFromNeo4j.clear();
if(neo4jTableList.size()!=0){ if(neo4jTableList.size()!=0){
neo4jTableRepository.saveAll(neo4jTableList); for(Neo4jTable table : neo4jTableList){
neo4jTableRepository.save(table, 0);
}
logger.info("继续同步同步了:"+neo4jTableList.size()+"个表。"); logger.info("继续同步同步了:"+neo4jTableList.size()+"个表。");
neo4jTableList.clear(); neo4jTableList.clear();
} }
...@@ -1504,7 +1514,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1504,7 +1514,7 @@ public class MetadataServiceImpl implements IMetadataService {
//如果存在,就不用创建 //如果存在,就不用创建
if(!schemaMap.containsKey(neo4jSchema.getMetadataId())){ if(!schemaMap.containsKey(neo4jSchema.getMetadataId())){
neo4jSchemaRepository.save(neo4jSchema); neo4jSchemaRepository.save(neo4jSchema, 0);
schemaCount++; schemaCount++;
CompositionRelation compositionRelation = new CompositionRelation(); CompositionRelation compositionRelation = new CompositionRelation();
compositionRelation.setStart(neo4jSystem); compositionRelation.setStart(neo4jSystem);
...@@ -1599,7 +1609,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1599,7 +1609,9 @@ public class MetadataServiceImpl implements IMetadataService {
procedureCount++; procedureCount++;
if(procedureCount % batchSize ==0){ if(procedureCount % batchSize ==0){
neo4jProcedureRepository.saveAll(neo4jProcedureList); for(Neo4jProcedure procedure : neo4jProcedureList){
neo4jProcedureRepository.save(procedure, 0);
}
logger.info("同步了:"+procedureCount+"个function。"+procedureId); logger.info("同步了:"+procedureCount+"个function。"+procedureId);
neo4jProcedureList.clear(); neo4jProcedureList.clear();
} }
...@@ -1610,7 +1622,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1610,7 +1622,9 @@ public class MetadataServiceImpl implements IMetadataService {
logger.info("需要删除的function个数:"+ procedureIdMapFromNeo4j.size()); logger.info("需要删除的function个数:"+ procedureIdMapFromNeo4j.size());
if(neo4jProcedureList.size()!=0){ if(neo4jProcedureList.size()!=0){
neo4jProcedureRepository.saveAll(neo4jProcedureList); for(Neo4jProcedure procedure : neo4jProcedureList){
neo4jProcedureRepository.save(procedure, 0);
}
logger.info("继续同步同步了:"+neo4jProcedureList.size()+"个function。"); logger.info("继续同步同步了:"+neo4jProcedureList.size()+"个function。");
neo4jProcedureList.clear(); neo4jProcedureList.clear();
} }
...@@ -1665,7 +1679,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1665,7 +1679,9 @@ public class MetadataServiceImpl implements IMetadataService {
functionCount++; functionCount++;
if(functionCount % batchSize ==0){ if(functionCount % batchSize ==0){
neo4jFunctionRepository.saveAll(neo4jFunctionList); for(Neo4jFunction function : neo4jFunctionList){
neo4jFunctionRepository.save(function, 0);
}
logger.info("同步了:"+functionCount+"个function。"+functionId); logger.info("同步了:"+functionCount+"个function。"+functionId);
neo4jFunctionList.clear(); neo4jFunctionList.clear();
} }
...@@ -1676,7 +1692,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1676,7 +1692,9 @@ public class MetadataServiceImpl implements IMetadataService {
logger.info("需要删除的function个数:"+ functionIdMapFromNeo4j.size()); logger.info("需要删除的function个数:"+ functionIdMapFromNeo4j.size());
if(neo4jFunctionList.size()!=0){ if(neo4jFunctionList.size()!=0){
neo4jFunctionRepository.saveAll(neo4jFunctionList); for(Neo4jFunction function : neo4jFunctionList){
neo4jFunctionRepository.save(function, 0);
}
logger.info("继续同步同步了:"+neo4jFunctionList.size()+"个function。"); logger.info("继续同步同步了:"+neo4jFunctionList.size()+"个function。");
neo4jFunctionList.clear(); neo4jFunctionList.clear();
} }
...@@ -1732,7 +1750,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1732,7 +1750,9 @@ public class MetadataServiceImpl implements IMetadataService {
viewCount++; viewCount++;
if(viewCount % batchSize ==0){ if(viewCount % batchSize ==0){
neo4jViewRepository.saveAll(neo4jViewList); for(Neo4jView view : neo4jViewList){
neo4jViewRepository.save(view, 0);
}
logger.info("同步了:"+viewCount+"个表。"+viewId); logger.info("同步了:"+viewCount+"个表。"+viewId);
neo4jViewList.clear(); neo4jViewList.clear();
} }
...@@ -1743,7 +1763,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1743,7 +1763,9 @@ public class MetadataServiceImpl implements IMetadataService {
logger.info("需要删除的view个数:"+ viewIdMapFromNeo4j.size()); logger.info("需要删除的view个数:"+ viewIdMapFromNeo4j.size());
if(neo4jViewList.size()!=0){ if(neo4jViewList.size()!=0){
neo4jViewRepository.saveAll(neo4jViewList); for(Neo4jView view : neo4jViewList){
neo4jViewRepository.save(view, 0);
}
logger.info("继续同步同步了:"+neo4jViewList.size()+"个视图。"); logger.info("继续同步同步了:"+neo4jViewList.size()+"个视图。");
neo4jViewList.clear(); neo4jViewList.clear();
} }
...@@ -1816,7 +1838,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1816,7 +1838,9 @@ public class MetadataServiceImpl implements IMetadataService {
columnCount++; columnCount++;
if (columnCount % batchSize == 0) { if (columnCount % batchSize == 0) {
logger.info("同步了:"+columnCount+"个字段。"+columnId); logger.info("同步了:"+columnCount+"个字段。"+columnId);
neo4jColumnRepository.saveAll(neo4jColumnList); for(Neo4jColumn column : neo4jColumnList){
neo4jColumnRepository.save(column, 0);
}
neo4jColumnList.clear(); neo4jColumnList.clear();
} }
} }
...@@ -1830,11 +1854,16 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -1830,11 +1854,16 @@ public class MetadataServiceImpl implements IMetadataService {
neo4jColumns.add(neo4jColumn); neo4jColumns.add(neo4jColumn);
} }
if(neo4jColumns.size()!=0){ if(neo4jColumns.size()!=0){
neo4jColumnRepository.deleteAll(neo4jColumns); // 暂时注释掉删除操作,因为GraphDbRepository可能没有delete方法
// for(Neo4jColumn column : neo4jColumns){
// neo4jColumnRepository.delete(column);
// }
} }
if(neo4jColumnList.size()!=0){ if(neo4jColumnList.size()!=0){
neo4jColumnRepository.saveAll(neo4jColumnList); for(Neo4jColumn column : neo4jColumnList){
neo4jColumnRepository.save(column, 0);
}
neo4jColumnList.clear(); neo4jColumnList.clear();
} }
long columnTime2 = System.currentTimeMillis(); long columnTime2 = System.currentTimeMillis();
...@@ -2034,9 +2063,6 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2034,9 +2063,6 @@ public class MetadataServiceImpl implements IMetadataService {
if(label == null || label.equals("")){ if(label == null || label.equals("")){
Random r = new Random(1); Random r = new Random(1);
int ran1 = r.nextInt(6); int ran1 = r.nextInt(6);
if(ran1>6){
ran1 = 6;
}
label = layer.get(ran1); label = layer.get(ran1);
} }
...@@ -2047,7 +2073,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2047,7 +2073,9 @@ public class MetadataServiceImpl implements IMetadataService {
private void saveProcedureEvery200(int procedureCount, List<Neo4jProcedure> procedureTableList) { private void saveProcedureEvery200(int procedureCount, List<Neo4jProcedure> procedureTableList) {
if(procedureCount %100==0){ if(procedureCount %100==0){
logger.info("同步了:"+procedureCount+"个函数。"); logger.info("同步了:"+procedureCount+"个函数。");
neo4jProcedureRepository.saveAll(procedureTableList); for (Neo4jProcedure procedure : procedureTableList) {
neo4jProcedureRepository.save(procedure, 0);
}
procedureTableList.clear(); procedureTableList.clear();
} }
} }
...@@ -2055,7 +2083,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2055,7 +2083,9 @@ public class MetadataServiceImpl implements IMetadataService {
private void saveFunctionEvery200(int functionCount, List<Neo4jFunction> functionTableList) { private void saveFunctionEvery200(int functionCount, List<Neo4jFunction> functionTableList) {
if(functionCount %100==0){ if(functionCount %100==0){
logger.info("同步了:"+functionCount+"个函数。"); logger.info("同步了:"+functionCount+"个函数。");
neo4jFunctionRepository.saveAll(functionTableList); for (Neo4jFunction function : functionTableList) {
neo4jFunctionRepository.save(function, 0);
}
functionTableList.clear(); functionTableList.clear();
} }
} }
...@@ -2063,19 +2093,29 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2063,19 +2093,29 @@ public class MetadataServiceImpl implements IMetadataService {
private void saveViewEvery200(int viewCount, List<Neo4jView> viewTableList) { private void saveViewEvery200(int viewCount, List<Neo4jView> viewTableList) {
if(viewCount %100==0){ if(viewCount %100==0){
logger.info("同步了:"+viewCount+"个表。"); logger.info("同步了:"+viewCount+"个表。");
neo4jViewRepository.saveAll(viewTableList); for (Neo4jView view : viewTableList) {
neo4jViewRepository.save(view, 0);
}
viewTableList.clear(); viewTableList.clear();
} }
} }
private void saveColumnEvery200(int columnCount, List<Neo4jColumn> neo4jColumnList) { private void saveColumnEvery200(int columnCount, List<Neo4jColumn> neo4jColumnList) {
if(columnCount %100==0){
logger.info("同步了:"+columnCount+"个字段。");
for (Neo4jColumn column : neo4jColumnList) {
neo4jColumnRepository.save(column, 0);
}
neo4jColumnList.clear();
}
} }
private void saveTableEvery200(int tableCount, List<Neo4jTable> neo4jTableList) { private void saveTableEvery200(int tableCount, List<Neo4jTable> neo4jTableList) {
if(tableCount % 1000 == 0){ if(tableCount % 1000 == 0){
logger.info("同步了:"+tableCount+"个表。"); logger.info("同步了:"+tableCount+"个表。");
neo4jTableRepository.saveAll(neo4jTableList); for (Neo4jTable table : neo4jTableList) {
neo4jTableRepository.save(table, 0);
}
neo4jTableList.clear(); neo4jTableList.clear();
} }
} }
...@@ -2090,20 +2130,30 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2090,20 +2130,30 @@ public class MetadataServiceImpl implements IMetadataService {
private void saveRemainData(List<Neo4jTable> neo4jTableList, List<Neo4jColumn> neo4jColumnList, List<Neo4jView> viewTableList, private void saveRemainData(List<Neo4jTable> neo4jTableList, List<Neo4jColumn> neo4jColumnList, List<Neo4jView> viewTableList,
List<Neo4jFunction> functionTableList, List<Neo4jProcedure> procedureTableList) { List<Neo4jFunction> functionTableList, List<Neo4jProcedure> procedureTableList) {
if(CollectionUtils.isEmpty(neo4jTableList)){ if(!CollectionUtils.isEmpty(neo4jTableList)){
neo4jTableRepository.saveAll(neo4jTableList); for (Neo4jTable table : neo4jTableList) {
neo4jTableRepository.save(table, 0);
}
} }
if(CollectionUtils.isEmpty(neo4jColumnList) ){ if(!CollectionUtils.isEmpty(neo4jColumnList) ){
neo4jColumnRepository.saveAll(neo4jColumnList); for (Neo4jColumn column : neo4jColumnList) {
neo4jColumnRepository.save(column, 0);
}
} }
if(CollectionUtils.isEmpty(viewTableList) ){ if(!CollectionUtils.isEmpty(viewTableList) ){
neo4jViewRepository.saveAll(viewTableList); for (Neo4jView view : viewTableList) {
neo4jViewRepository.save(view, 0);
}
} }
if(CollectionUtils.isEmpty(functionTableList)){ if(!CollectionUtils.isEmpty(functionTableList)){
neo4jFunctionRepository.saveAll(functionTableList); for (Neo4jFunction function : functionTableList) {
neo4jFunctionRepository.save(function, 0);
}
} }
if(CollectionUtils.isEmpty(procedureTableList) ){ if(!CollectionUtils.isEmpty(procedureTableList) ){
neo4jProcedureRepository.saveAll(procedureTableList); for (Neo4jProcedure procedure : procedureTableList) {
neo4jProcedureRepository.save(procedure, 0);
}
} }
} }
...@@ -2204,14 +2254,18 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2204,14 +2254,18 @@ public class MetadataServiceImpl implements IMetadataService {
private void saveEtlSqlEvery200(int etlSqlCount, List<Neo4jETLSql> neo4jETLSqlArrayList) { private void saveEtlSqlEvery200(int etlSqlCount, List<Neo4jETLSql> neo4jETLSqlArrayList) {
if(etlSqlCount%200==0){ if(etlSqlCount%200==0){
neo4jETLSqlRepository.saveAll(neo4jETLSqlArrayList); for(Neo4jETLSql sql : neo4jETLSqlArrayList){
neo4jETLSqlRepository.save(sql, 0);
}
neo4jETLSqlArrayList.clear(); neo4jETLSqlArrayList.clear();
} }
} }
private void saveEtlScriptEvery200(int etlScriptCount, List<Neo4jETLScript> neo4jETLScriptList) { private void saveEtlScriptEvery200(int etlScriptCount, List<Neo4jETLScript> neo4jETLScriptList) {
if(etlScriptCount%200==0){ if(etlScriptCount%200==0){
neo4jETLScriptRepository.saveAll(neo4jETLScriptList); for(Neo4jETLScript script : neo4jETLScriptList){
neo4jETLScriptRepository.save(script, 0);
}
neo4jETLScriptList.clear(); neo4jETLScriptList.clear();
} }
} }
...@@ -2219,26 +2273,34 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2219,26 +2273,34 @@ public class MetadataServiceImpl implements IMetadataService {
private void saveEtlJobEvery200(int etlJobCount, List<Neo4jETLJob> neo4jETLJobList) { private void saveEtlJobEvery200(int etlJobCount, List<Neo4jETLJob> neo4jETLJobList) {
if(etlJobCount%200 == 0){ if(etlJobCount%200 == 0){
logger.info("同步了"+etlJobCount); logger.info("同步了"+etlJobCount);
neo4jETLJobRepository.saveAll(neo4jETLJobList); for(Neo4jETLJob job : neo4jETLJobList){
neo4jETLJobRepository.save(job, 0);
}
neo4jETLJobList.clear(); neo4jETLJobList.clear();
} }
} }
private void saveETLJobToNeo4j(List<Neo4jETLJob> neo4jETLJobList) { private void saveETLJobToNeo4j(List<Neo4jETLJob> neo4jETLJobList) {
if(CollectionUtils.isEmpty(neo4jETLJobList) ){ if(!CollectionUtils.isEmpty(neo4jETLJobList) ){
neo4jETLJobRepository.saveAll(neo4jETLJobList); for(Neo4jETLJob job : neo4jETLJobList){
neo4jETLJobRepository.save(job, 0);
}
} }
} }
private void saveETLSqlToNeo4j(List<Neo4jETLSql> neo4jETLSqlArrayList) { private void saveETLSqlToNeo4j(List<Neo4jETLSql> neo4jETLSqlArrayList) {
if(CollectionUtils.isEmpty(neo4jETLSqlArrayList) ){ if(!CollectionUtils.isEmpty(neo4jETLSqlArrayList) ){
neo4jETLSqlRepository.saveAll(neo4jETLSqlArrayList); for(Neo4jETLSql sql : neo4jETLSqlArrayList){
neo4jETLSqlRepository.save(sql, 0);
}
} }
} }
private void saveEtlScriptToNeo4j(List<Neo4jETLScript> neo4jETLScriptList) { private void saveEtlScriptToNeo4j(List<Neo4jETLScript> neo4jETLScriptList) {
if(CollectionUtils.isEmpty(neo4jETLScriptList) ){ if(!CollectionUtils.isEmpty(neo4jETLScriptList) ){
neo4jETLScriptRepository.saveAll(neo4jETLScriptList); for(Neo4jETLScript script : neo4jETLScriptList){
neo4jETLScriptRepository.save(script, 0);
}
} }
} }
...@@ -2273,7 +2335,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2273,7 +2335,7 @@ public class MetadataServiceImpl implements IMetadataService {
neo4jSystem.setDataPath(systemPath); neo4jSystem.setDataPath(systemPath);
//用名称查找,如果存在,就不用创建 //用名称查找,如果存在,就不用创建
if(!systemMap.containsKey(systemId)){ if(!systemMap.containsKey(systemId)){
neo4jSystemRepository.save(neo4jSystem); neo4jSystemRepository.save(neo4jSystem, 0);
} }
systemDataMap.put(systemData.get_id(),neo4jSystem); systemDataMap.put(systemData.get_id(),neo4jSystem);
} }
...@@ -2312,7 +2374,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2312,7 +2374,7 @@ public class MetadataServiceImpl implements IMetadataService {
neo4jTable.setIsSystem("1104"); neo4jTable.setIsSystem("1104");
neo4jTable.setName(sourceTable); neo4jTable.setName(sourceTable);
neo4jTable.setCnName(sourceTableCnName); neo4jTable.setCnName(sourceTableCnName);
neo4jTable = neo4jTableRepository.save(neo4jTable); neo4jTable = neo4jTableRepository.save(neo4jTable, 0);
} }
String sourceColumnId = getSourceColumnId(sourceTableId,sourceColumn); String sourceColumnId = getSourceColumnId(sourceTableId,sourceColumn);
...@@ -2324,13 +2386,13 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2324,13 +2386,13 @@ public class MetadataServiceImpl implements IMetadataService {
souceNeo4jColumn.setMetadataId(sourceColumnId); souceNeo4jColumn.setMetadataId(sourceColumnId);
souceNeo4jColumn.setName(sourceColumn); souceNeo4jColumn.setName(sourceColumn);
souceNeo4jColumn.setCnName(sourceColumnDes); souceNeo4jColumn.setCnName(sourceColumnDes);
souceNeo4jColumn = neo4jColumnRepository.save(souceNeo4jColumn); souceNeo4jColumn = neo4jColumnRepository.save(souceNeo4jColumn, 0);
} }
CompositionRelation table2Column = new CompositionRelation(); CompositionRelation table2Column = new CompositionRelation();
table2Column.setStart(neo4jTable); table2Column.setStart(neo4jTable);
table2Column.setEnd(souceNeo4jColumn); table2Column.setEnd(souceNeo4jColumn);
table2Column.setName("table--column"); table2Column.setName("table--column");
compositionRelationRespository.save(table2Column); compositionRelationRespository.save(table2Column, 0);
} }
String targetTableId = "Table=1104="+targetTable; String targetTableId = "Table=1104="+targetTable;
...@@ -2342,7 +2404,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2342,7 +2404,7 @@ public class MetadataServiceImpl implements IMetadataService {
targetNeo4jTable.setIsSystem("1104"); targetNeo4jTable.setIsSystem("1104");
targetNeo4jTable.setName(targetTable); targetNeo4jTable.setName(targetTable);
targetNeo4jTable.setCnName(targetTableCnName); targetNeo4jTable.setCnName(targetTableCnName);
targetNeo4jTable = neo4jTableRepository.save(targetNeo4jTable); targetNeo4jTable = neo4jTableRepository.save(targetNeo4jTable, 0);
} }
String targetColumnId = getTargetColumnId(targetTableId,targetColumn); String targetColumnId = getTargetColumnId(targetTableId,targetColumn);
...@@ -2357,13 +2419,13 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2357,13 +2419,13 @@ public class MetadataServiceImpl implements IMetadataService {
targetNeo4jColumn.setMetadataId(targetColumnId); targetNeo4jColumn.setMetadataId(targetColumnId);
targetNeo4jColumn.setName(targetColumn); targetNeo4jColumn.setName(targetColumn);
targetNeo4jColumn.setCnName(targetColumnDes); targetNeo4jColumn.setCnName(targetColumnDes);
targetNeo4jColumn = neo4jColumnRepository.save(targetNeo4jColumn); targetNeo4jColumn = neo4jColumnRepository.save(targetNeo4jColumn, 0);
} }
CompositionRelation targetTable2Column = new CompositionRelation(); CompositionRelation targetTable2Column = new CompositionRelation();
targetTable2Column.setStart(targetNeo4jTable); targetTable2Column.setStart(targetNeo4jTable);
targetTable2Column.setEnd(targetNeo4jColumn); targetTable2Column.setEnd(targetNeo4jColumn);
targetTable2Column.setName("table--column"); targetTable2Column.setName("table--column");
compositionRelationRespository.save(targetTable2Column); compositionRelationRespository.save(targetTable2Column, 0);
} }
relationshipService.saveRelation(sourceColumnId,targetColumnId,"流向"); relationshipService.saveRelation(sourceColumnId,targetColumnId,"流向");
...@@ -2767,7 +2829,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2767,7 +2829,9 @@ public class MetadataServiceImpl implements IMetadataService {
DependencyRelation dependencyRelation = dependencyRelationMap.get(obj); DependencyRelation dependencyRelation = dependencyRelationMap.get(obj);
dependencyRelationList.add(dependencyRelation); dependencyRelationList.add(dependencyRelation);
if(count % 500 == 0){ if(count % 500 == 0){
dependencyRelationResposity.saveAll(dependencyRelationList); for(DependencyRelation relation : dependencyRelationList){
dependencyRelationResposity.save(relation, 0);
}
logger.info("创建了"+count+"关系:"); logger.info("创建了"+count+"关系:");
dependencyRelationList.clear(); dependencyRelationList.clear();
} }
...@@ -2791,7 +2855,9 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -2791,7 +2855,9 @@ public class MetadataServiceImpl implements IMetadataService {
// } // }
} }
if(dependencyRelationList .size() !=0){ if(dependencyRelationList .size() !=0){
dependencyRelationResposity.saveAll(dependencyRelationList); for(DependencyRelation relation : dependencyRelationList){
dependencyRelationResposity.save(relation, 0);
}
dependencyRelationList.clear(); dependencyRelationList.clear();
} }
...@@ -3053,7 +3119,7 @@ public class MetadataServiceImpl implements IMetadataService { ...@@ -3053,7 +3119,7 @@ public class MetadataServiceImpl implements IMetadataService {
tempNode.setName(name); tempNode.setName(name);
} }
tempNode.setParentId(parentId); tempNode.setParentId(parentId);
tempNode = tempNodeRepository.save(tempNode); tempNode = tempNodeRepository.save(tempNode, 0);
nodeId = tempNode.getId(); nodeId = tempNode.getId();
return nodeId; return nodeId;
} }
......
package com.keymobile.metadata.metadataRelation.service.impl; package com.keymobile.metadata.metadataRelation.service.impl;
import com.keymobile.metadata.metadataRelation.config.Neo4jConfig;
import com.keymobile.metadata.metadataRelation.pojo.*; import com.keymobile.metadata.metadataRelation.pojo.*;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jTable; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jTable;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnEdge; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnEdge;
...@@ -10,9 +9,9 @@ import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnReslult; ...@@ -10,9 +9,9 @@ import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnReslult;
import com.keymobile.metadata.metadataRelation.respository.*; import com.keymobile.metadata.metadataRelation.respository.*;
import com.keymobile.metadata.metadataRelation.service.MultiModelService; import com.keymobile.metadata.metadataRelation.service.MultiModelService;
import com.keymobile.metadata.metadataRelation.util.Neo4jTool; import com.keymobile.metadata.metadataRelation.util.Neo4jTool;
import org.neo4j.driver.v1.*; import com.graphdbapi.driver.v1.*;
import org.neo4j.driver.v1.Record; import com.graphdbapi.driver.v1.Record;
import org.neo4j.driver.v1.types.Node; import com.graphdbapi.driver.v1.types.Node;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
......
...@@ -2,16 +2,15 @@ package com.keymobile.metadata.metadataRelation.service.impl; ...@@ -2,16 +2,15 @@ package com.keymobile.metadata.metadataRelation.service.impl;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSchema; import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSchema;
import com.keymobile.metadata.metadataRelation.pojo.metadata.Neo4jSystem;
import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode; import com.keymobile.metadata.metadataRelation.pojo.returnBean.ReturnNode;
import com.keymobile.metadata.metadataRelation.remote.TagRemoteService; import com.keymobile.metadata.metadataRelation.remote.TagRemoteService;
import com.keymobile.metadata.metadataRelation.respository.metadata.Neo4jSchemaRepository; import com.keymobile.metadata.metadataRelation.respository.metadata.Neo4jSchemaRepository;
import com.keymobile.metadata.metadataRelation.respository.metadata.Neo4jSystemRepository; import com.keymobile.metadata.metadataRelation.respository.metadata.Neo4jSystemRepository;
import com.keymobile.metadata.metadataRelation.service.ISchemaService; import com.keymobile.metadata.metadataRelation.service.ISchemaService;
import com.keymobile.metadata.metadataRelation.util.SchemaLayerObject; import com.keymobile.metadata.metadataRelation.util.SchemaLayerObject;
import org.neo4j.driver.v1.Record; import com.graphdbapi.driver.v1.Record;
import org.neo4j.driver.v1.Session; import com.graphdbapi.driver.v1.Session;
import org.neo4j.driver.v1.StatementResult; import com.graphdbapi.driver.v1.StatementResult;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -275,7 +274,7 @@ public class SchemaServiceImpl implements ISchemaService { ...@@ -275,7 +274,7 @@ public class SchemaServiceImpl implements ISchemaService {
// if(layer.contains(label)){ // if(layer.contains(label)){
// Neo4jSchema neo4jSchema = neo4jSchemaMap.get(schemaId); // Neo4jSchema neo4jSchema = neo4jSchemaMap.get(schemaId);
// neo4jSchema.setLabel(label); // neo4jSchema.setLabel(label);
// neo4jSchemaRepository.save(neo4jSchema); // neo4jSchemaRepository.save(neo4jSchema, 0);
// //
// break; // break;
// } // }
...@@ -440,7 +439,7 @@ public class SchemaServiceImpl implements ISchemaService { ...@@ -440,7 +439,7 @@ public class SchemaServiceImpl implements ISchemaService {
if (layer.contains(label)) { if (layer.contains(label)) {
Neo4jSchema neo4jSchema = neo4jSchemaMap.get(schemaId); Neo4jSchema neo4jSchema = neo4jSchemaMap.get(schemaId);
neo4jSchema.setLabel(label); neo4jSchema.setLabel(label);
neo4jSchemaRepository.save(neo4jSchema); neo4jSchemaRepository.save(neo4jSchema, 0);
break; break;
} }
...@@ -494,7 +493,7 @@ public class SchemaServiceImpl implements ISchemaService { ...@@ -494,7 +493,7 @@ public class SchemaServiceImpl implements ISchemaService {
String schemaLabel = getLabelBySchemaId(schemaId); String schemaLabel = getLabelBySchemaId(schemaId);
Neo4jSchema neo4jSchemaByMetadata = neo4jSchemaRepository.findNeo4jSchemaByMetadataId(schemaId); Neo4jSchema neo4jSchemaByMetadata = neo4jSchemaRepository.findNeo4jSchemaByMetadataId(schemaId);
neo4jSchemaByMetadata.setLabel(schemaLabel); neo4jSchemaByMetadata.setLabel(schemaLabel);
neo4jSchemaRepository.save(neo4jSchemaByMetadata); neo4jSchemaRepository.save(neo4jSchemaByMetadata, 0);
return true; return true;
} }
......
...@@ -13,13 +13,13 @@ import com.keymobile.metadata.metadataRelation.service.ISystemService; ...@@ -13,13 +13,13 @@ import com.keymobile.metadata.metadataRelation.service.ISystemService;
import com.keymobile.metadata.metadataRelation.util.Neo4jTool; import com.keymobile.metadata.metadataRelation.util.Neo4jTool;
import com.keymobile.metadata.metadataRelation.util.SchemaLayerObject; import com.keymobile.metadata.metadataRelation.util.SchemaLayerObject;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.neo4j.driver.v1.Record; import com.graphdbapi.driver.v1.Record;
import org.neo4j.driver.v1.Session; import com.graphdbapi.driver.v1.Session;
import org.neo4j.driver.v1.StatementResult; import com.graphdbapi.driver.v1.StatementResult;
import org.neo4j.driver.v1.Value; import com.graphdbapi.driver.v1.Value;
import org.neo4j.driver.v1.types.Node; import com.graphdbapi.driver.v1.types.Node;
import org.neo4j.driver.v1.types.Path; import com.graphdbapi.driver.v1.types.Path;
import org.neo4j.driver.v1.types.Relationship; import com.graphdbapi.driver.v1.types.Relationship;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -320,7 +320,7 @@ public class SystemServiceImpl implements ISystemService { ...@@ -320,7 +320,7 @@ public class SystemServiceImpl implements ISystemService {
returnNode.getAttributeMaps().put("列",""+stringObjectMap.get("列")); returnNode.getAttributeMaps().put("列",""+stringObjectMap.get("列"));
returnNode.setType("Neo4jSystem"); returnNode.setType("Neo4jSystem");
nodesMap.put(node.id(), returnNode); nodesMap.put(Long.parseLong(node.id().toString()), returnNode);
} }
} }
} }
package com.keymobile.metadata.metadataRelation.service.impl; package com.keymobile.metadata.metadataRelation.service.impl;
import com.keymobile.metadata.metadataRelation.config.Neo4jConfig;
import com.keymobile.metadata.metadataRelation.pojo.BaseNode; import com.keymobile.metadata.metadataRelation.pojo.BaseNode;
import com.keymobile.metadata.metadataRelation.pojo.MetaData; import com.keymobile.metadata.metadataRelation.pojo.MetaData;
import com.keymobile.metadata.metadataRelation.pojo.metadata.*; import com.keymobile.metadata.metadataRelation.pojo.metadata.*;
...@@ -14,11 +13,11 @@ import com.keymobile.metadata.metadataRelation.remote.MetadataRepoRemoteService; ...@@ -14,11 +13,11 @@ import com.keymobile.metadata.metadataRelation.remote.MetadataRepoRemoteService;
import com.keymobile.metadata.metadataRelation.respository.metadata.*; import com.keymobile.metadata.metadataRelation.respository.metadata.*;
import com.keymobile.metadata.metadataRelation.service.ITableService; import com.keymobile.metadata.metadataRelation.service.ITableService;
import com.keymobile.metadata.metadataRelation.util.Neo4jTool; import com.keymobile.metadata.metadataRelation.util.Neo4jTool;
import org.neo4j.driver.v1.*; import com.graphdbapi.driver.v1.*;
import org.neo4j.driver.v1.Record; import com.graphdbapi.driver.v1.StatementResult;
import org.neo4j.driver.v1.types.Node; import com.graphdbapi.driver.v1.types.Node;
import org.neo4j.driver.v1.types.Path; import com.graphdbapi.driver.v1.types.Path;
import org.neo4j.driver.v1.types.Relationship; import com.graphdbapi.driver.v1.types.Relationship;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -270,7 +269,7 @@ public class TableServiceImpl implements ITableService { ...@@ -270,7 +269,7 @@ public class TableServiceImpl implements ITableService {
StatementResult result = session.run(cypher); StatementResult result = session.run(cypher);
while(result.hasNext()){ while(result.hasNext()){
Record record = result.next(); com.graphdbapi.driver.v1.Record record = result.next();
List<Value> values = record.values(); List<Value> values = record.values();
for (Value value : values) { for (Value value : values) {
if(value.type().name().equals("NODE")){ if(value.type().name().equals("NODE")){
...@@ -332,7 +331,7 @@ public class TableServiceImpl implements ITableService { ...@@ -332,7 +331,7 @@ public class TableServiceImpl implements ITableService {
} }
private void getResultFromColumn(Map<String, ReturnNode> returnNodeMap, Map<String, ReturnEdge> returnEdgeMap, StatementResult result) { private void getResultFromColumn(Map<String, ReturnNode> returnNodeMap, Map<String, ReturnEdge> returnEdgeMap, StatementResult result) {
Record record = result.next(); com.graphdbapi.driver.v1.Record record = result.next();
List<Value> values = record.values(); List<Value> values = record.values();
for (Value value : values) { for (Value value : values) {
if (value.type().name().equals("PATH")) { if (value.type().name().equals("PATH")) {
...@@ -409,7 +408,7 @@ public class TableServiceImpl implements ITableService { ...@@ -409,7 +408,7 @@ public class TableServiceImpl implements ITableService {
// } // }
returnNode.setType("MetaData"); returnNode.setType("MetaData");
returnNodeMap.put(returnNode.getId(),returnNode); returnNodeMap.put(returnNode.getId(),returnNode);
nodesMap.put(node.id(), metaData); nodesMap.put(Long.parseLong(node.id().toString()), metaData);
} }
@Override @Override
...@@ -632,7 +631,7 @@ public class TableServiceImpl implements ITableService { ...@@ -632,7 +631,7 @@ public class TableServiceImpl implements ITableService {
} }
private void getReturnNodeFromColumn(Map<String, String> withRelationColumns, StatementResult table2CoumnResult, ReturnNode currentTableNode) { private void getReturnNodeFromColumn(Map<String, String> withRelationColumns, StatementResult table2CoumnResult, ReturnNode currentTableNode) {
Record record = table2CoumnResult.next(); com.graphdbapi.driver.v1.Record record = table2CoumnResult.next();
List<Value> values = record.values(); List<Value> values = record.values();
for (Value value : values) { for (Value value : values) {
if(value.type().name().equals("NODE")){ if(value.type().name().equals("NODE")){
...@@ -662,7 +661,7 @@ public class TableServiceImpl implements ITableService { ...@@ -662,7 +661,7 @@ public class TableServiceImpl implements ITableService {
} }
private void getResultFromTargetColumn(Map<String, ReturnEdge> childrenEdgeMap, Map<String, String> withRelationColumns, String currentColumnId, StatementResult targetColumnResult) { private void getResultFromTargetColumn(Map<String, ReturnEdge> childrenEdgeMap, Map<String, String> withRelationColumns, String currentColumnId, StatementResult targetColumnResult) {
Record record = targetColumnResult.next(); com.graphdbapi.driver.v1.Record record = targetColumnResult.next();
List<Value> values = record.values(); List<Value> values = record.values();
for (Value value : values) { for (Value value : values) {
if(value.type().name().equals("NODE")){ if(value.type().name().equals("NODE")){
...@@ -697,7 +696,7 @@ public class TableServiceImpl implements ITableService { ...@@ -697,7 +696,7 @@ public class TableServiceImpl implements ITableService {
} }
private void getResultFromSourceColumn(Map<String, ReturnEdge> childrenEdgeMap, Map<String, String> withRelationColumns, String currentColumnId, StatementResult sourceColumnResult) { private void getResultFromSourceColumn(Map<String, ReturnEdge> childrenEdgeMap, Map<String, String> withRelationColumns, String currentColumnId, StatementResult sourceColumnResult) {
Record record = sourceColumnResult.next(); com.graphdbapi.driver.v1.Record record = sourceColumnResult.next();
List<Value> values = record.values(); List<Value> values = record.values();
for (Value value : values) { for (Value value : values) {
if(value.type().name().equals("NODE")){ if(value.type().name().equals("NODE")){
...@@ -730,7 +729,7 @@ public class TableServiceImpl implements ITableService { ...@@ -730,7 +729,7 @@ public class TableServiceImpl implements ITableService {
} }
private void getReturnResultFromTargetTable(String tableId, Map<String, ReturnNode> returnNodeMap, Map<String, ReturnEdge> returnEdgeMap, Map<String, String> tableIdMap, StatementResult targetTablecResult) { private void getReturnResultFromTargetTable(String tableId, Map<String, ReturnNode> returnNodeMap, Map<String, ReturnEdge> returnEdgeMap, Map<String, String> tableIdMap, StatementResult targetTablecResult) {
Record record = targetTablecResult.next(); com.graphdbapi.driver.v1.Record record = targetTablecResult.next();
List<Value> values = record.values(); List<Value> values = record.values();
for (Value value : values) { for (Value value : values) {
if(value.type().name().equals("NODE")){ if(value.type().name().equals("NODE")){
...@@ -763,7 +762,7 @@ public class TableServiceImpl implements ITableService { ...@@ -763,7 +762,7 @@ public class TableServiceImpl implements ITableService {
} }
private void getReturnResultFromSourceTable(String tableId, Map<String, ReturnNode> returnNodeMap, Map<String, ReturnEdge> returnEdgeMap, Map<String, String> tableIdMap, StatementResult sourceTableResult) { private void getReturnResultFromSourceTable(String tableId, Map<String, ReturnNode> returnNodeMap, Map<String, ReturnEdge> returnEdgeMap, Map<String, String> tableIdMap, StatementResult sourceTableResult) {
Record record = sourceTableResult.next(); com.graphdbapi.driver.v1.Record record = sourceTableResult.next();
List<Value> values = record.values(); List<Value> values = record.values();
for (Value value : values) { for (Value value : values) {
if(value.type().name().equals("NODE")){ if(value.type().name().equals("NODE")){
...@@ -856,7 +855,7 @@ public class TableServiceImpl implements ITableService { ...@@ -856,7 +855,7 @@ public class TableServiceImpl implements ITableService {
StatementResult result = session.run(cypher); StatementResult result = session.run(cypher);
while(result.hasNext()){ while(result.hasNext()){
Record record = result.next(); com.graphdbapi.driver.v1.Record record = result.next();
List<Value> values = record.values(); List<Value> values = record.values();
for (Value value : values) { for (Value value : values) {
if(value.type().name().equals("NODE")){ if(value.type().name().equals("NODE")){
......
...@@ -15,11 +15,11 @@ spring: ...@@ -15,11 +15,11 @@ spring:
database: d0 database: d0
username: user0 username: user0
password: password0 password: password0
neo4j: # neo4j:
uri: http://192.168.0.143:7474 # uri: http://192.168.0.143:7474
url: bolt://192.168.0.143:7687 # url: bolt://192.168.0.143:7687
username: neo4j # username: neo4j
password: yuanyao # password: yuanyao
datasource: datasource:
hikari: hikari:
maximum-pool-size: 5 maximum-pool-size: 5
...@@ -33,6 +33,13 @@ spring: ...@@ -33,6 +33,13 @@ spring:
password: password0 password: password0
virtual-host: v0 virtual-host: v0
galaxydb:
graphdbapi:
uri: bolt://192.168.0.143:7687
username: neo4j
password: yuanyao
dbname: dg
eureka: eureka:
client: client:
registryFetchIntervalSeconds: 5 registryFetchIntervalSeconds: 5
......
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