赞
踩
1.Neo4j是一个高性能的,是由Java和Scala写成的一个NOSQL图形数据库
neo4j官网下载地址:https://neo4j.com/download-center/#enterprise
neo4j中文社区:http://neo4j.com.cn/
优点:
缺点:
适用并使用场景:知识图谱
Windows和Linux下载解压,启动后浏览器输出:http://localhost:7474/ 即可登录。
第一次访问需要修改密码,默认的账号密码都为neo4j,后续若是修改密码,只需要在控制台输入:server change-password
配置文件:
开启远程访问:(远程其他电脑可以用本机的IP或者域名后面跟上7474 端口就能打开web界面了 如: https://:7473)
3.0以前的版本:在安装目录的/conf/neo4j.conf 文件内,找到并将注释#号去掉并修改就可以了。
#dbms.connector.https.address=localhost:7473
改为
dbms.connector.https.address=0.0.0.0:7473
3.1及以后的版本:在安装目录的/conf/neo4j.conf 文件内,找到并将注释#号去掉就可以了 。
dbms.connectors.default_listen_address=0.0.0.0
neo4j-admin-import 或 load csv 导数据内存溢出问题:
在 安装目录/conf/neo4j.conf 文件内,找到并修改设置JVM初始堆内存和JVM最大堆内存即可。
# 设置JVM初始堆内存和JVM最大堆内存
# 生产环境给的JVM最大堆内存越大越好,但是要小于机器的物理内存
dbms.memory.heap.initial_size=5g
dbms.memory.heap.max_size=10g
集成springboot:
集成springboot中版本问题!!(请对应版本号,不同大版本可能会有很大区别 版本对应地址 https://neo4j.com/developer/neo4j-ogm/ ):
- 例:springboot 2.1.6版本
- <parent>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-parent</artifactId>
- <version>2.1.6.RELEASE</version>
- </parent>
-
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-data-neo4j</artifactId>
- </dependency>
- <!-- Only add if you're using the Bolt driver这里我选择了http协议 -->
- <dependency>
- <groupId>org.neo4j</groupId>
- <artifactId>neo4j-ogm-http-driver</artifactId>
- </dependency>

yml配置:
- data:
- neo4j:
- uri: http://127.0.0.1:7474
- username: neo4j
- password: "0123"
密码数字如果以零为开头切记,spring boot yml配置文件中 ,配置前缀0的数字时,会被当成8进制数进行处理,登录neo4j会报密码错误等 例:0123,解决办法"0123"即可
配置Neo4jConfiguration相关配置
neo4j config
- import org.neo4j.ogm.session.SessionFactory;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.data.neo4j.repository.config.EnableNeo4jRepositories;
- import org.springframework.data.neo4j.transaction.Neo4jTransactionManager;
- import org.springframework.transaction.annotation.EnableTransactionManagement;
-
- /**
- * @author Eric.he
- * @description neo4j配置类
- */
-
- @Configuration
- @EnableNeo4jRepositories("com.eric.fire.video.mediaresourceadmin.neo4j.repository")
- @EnableTransactionManagement
- public class MediaNeo4jConfiguration {
- @Value("${spring.data.neo4j.uri}")
- private String databaseUrl;
-
- @Value("${spring.data.neo4j.username}")
- private String userName;
-
- @Value("${spring.data.neo4j.password}")
- private String password;
-
- @Bean
- public SessionFactory sessionFactory() {
- org.neo4j.ogm.config.Configuration configuration = new org.neo4j.ogm.config.Configuration.Builder()
- .uri(databaseUrl)
- .credentials(userName, password)
- .build();
- /**
- * 如果不指定节点映射的java bean路径,保存时会报如下警告,导致无法将节点插入Neo4j中
- * ... is not a valid entity class. Please check the entity mapping.
- */
- return new SessionFactory(configuration, "com.eric.fire.video.mediaresourceadmin.neo4j.node","com.eric.fire.video.mediaresourceadmin.neo4j.payload");
- }
-
- /**
- * DefaultTransactionManager SessionFactory.openSession()
- * Neo4jTransactionManager SessionFactory
- */
- @Bean
- public Neo4jTransactionManager transactionManager() {
- return new Neo4jTransactionManager(sessionFactory());
- }
-
- }

neo4j node
-
- import com.eric.fire.video.mediaresourceadmin.neo4j.payload.NeoConsts;
- import lombok.*;
- import org.neo4j.ogm.annotation.GeneratedValue;
- import org.neo4j.ogm.annotation.Id;
- import org.neo4j.ogm.annotation.NodeEntity;
- import org.neo4j.ogm.annotation.Relationship;
-
- import java.util.Set;
-
- @Data
- @NoArgsConstructor
- @RequiredArgsConstructor(staticName = "of")
- @AllArgsConstructor
- @Builder
- @NodeEntity(label = "Video")
- public class VideoNode {
-
- @Id
- @GeneratedValue
- private Long nodeId;
-
- @NonNull
- private String videoName;
-
-
- @Relationship(type = NeoConsts.RELATION_IN, direction = Relationship.INCOMI

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。