`

neo4j 入门实例

阅读更多

 

 

neo4j 2.0.1实例

 

package com.neo4j.demo1;

import org.neo4j.graphdb.Direction;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Relationship;
import org.neo4j.graphdb.RelationshipType;
import org.neo4j.graphdb.Transaction;
import org.neo4j.graphdb.factory.GraphDatabaseFactory;


public class HelloWorldTest {
	
	private static enum RelTypes implements RelationshipType{
		KNOWS
	};
	
	GraphDatabaseService graphDb;
	Node firstNode;
	Node secondNode;
	Relationship relationship;
	

	private static final String DB_PATH = "demo1/db1";//"neo4j-db";//

	public static void main(String[] args) {
		HelloWorldTest hwt = new HelloWorldTest();
		hwt.run();
	}
	
	public void run() {
		//创建连接,生成图
		GraphDatabaseService graphDb = new GraphDatabaseFactory().newEmbeddedDatabase( DB_PATH );
		registerShutdownHook( graphDb );
		//创建事务,
		Transaction tx = graphDb.beginTx();
		try {
			//添加节点
			firstNode = graphDb.createNode();
			firstNode.setProperty("message", "Hello,");
			secondNode = graphDb.createNode();
			secondNode.setProperty("message", "World!");
			relationship = firstNode.createRelationshipTo(secondNode, RelTypes.KNOWS);
			relationship.setProperty("message", "brave neo4j");
			
			print();
			
			delete();
			tx.success();//提交
		} finally{
			tx.finish();
			graphDb.shutdown();
		}
	}
	
	private void delete(){
		firstNode.getSingleRelationship(RelTypes.KNOWS, Direction.OUTGOING).delete();
		firstNode.delete();
		secondNode.delete();
	}
	
	private void print() {
		System.out.println(firstNode.getProperty("message"));
		System.out.println(relationship.getProperty("message"));
		System.out.println(secondNode.getProperty("message"));
	}

	private static void registerShutdownHook(final GraphDatabaseService graphDb) {
		Runtime.getRuntime().addShutdownHook(
				new Thread(){
					@Override
					public void run(){
						graphDb.shutdown();
					}
				}
			);
	}


}

 

分享到:
评论

相关推荐

    neo4j4.2实例视频

    描述中的“第一次入门样例视频”暗示我们将深入到Neo4j的核心特性——Cypher查询语言。Cypher是一种声明式语言,专为查询图形数据而设计。你需要掌握如何编写简单的查询,如查找特定节点、遍历关系,以及更复杂的...

    Neo4j学习-Neo4j入门-Neo4j文档

    在“Neo4j学习-Neo4j入门-Neo4j文档”这个主题中,我们将深入探讨Neo4j的基本概念、安装与配置、查询语言Cypher以及在实际应用中的优势。 首先,让我们了解一下什么是NOSQL数据库。NOSQL(Not Only SQL)是一种非...

    NEO4j.pdf入门与说明文档

    本文档旨在为初学者提供一个全面的NEO4j入门指南,并深入探讨其基本概念和技术细节。 #### 二、图数据库的概念 ##### 2.1 什么是图数据库? 图数据库是一种非关系型数据库,它使用图形理论来组织数据。在图数据库...

    Neo4j Ogm Manual 2.0

    - **入门**:介绍了如何开始使用Neo4j OGM进行开发。 - **领域模型**:定义了应用程序的领域模型,这是设计数据库结构的基础。 - **Neo4j OGM**:Neo4j OGM(对象图形映射)库提供了对象和Neo4j图形之间的映射机制。...

    Neo4j Developer Manual 3.0 Java

    - **入门**:指导如何使用Neo4j驱动程序与Neo4j实例进行交互。 - **驱动程序**:详细介绍Neo4j的官方驱动程序的功能和用法。 - **会话管理**:教授如何管理和控制与Neo4j实例之间的会话。 - **结果处理**:讲解如何...

    Neo4J用户手册

    REST API使得用户可以远程管理和访问Neo4J数据库实例,极大地拓展了Neo4J的应用场景。 最后,手册中还包含了Neo4J的授权信息,说明了该手册是以Creative Commons 3.0许可证发布。Creative Commons 3.0是一个开放源...

    neo4j课件和代码

    【标题】"neo4j课件和代码"涵盖了关于Neo4j数据库的全面学习资源,主要针对Java开发者,旨在从入门到精通地教授Neo4j的使用和开发。Neo4j是一个高性能的图形数据库,特别适合处理具有复杂关系的数据,如知识图谱的...

    neo4j-getting-started-4.0.pdf

    ### Neo4j的入门 对于希望学习Neo4j和Cypher的任何人来说,本手册是理想的选择。其中包含入门部分,介绍如何开始使用Neo4j: - **安装Neo4j**:推荐使用Neo4j Desktop,用户可以从官方地址下载并根据操作系统的...

    NEO4J1.8中文手册

    【Neo4j 1.8 中文手册】是针对图数据库 Neo4j 的入门学习资料,涵盖了从软件使用到与Java、Python等编程语言接口的整合。本手册旨在引导读者了解和掌握 Neo4j 的核心特性和实际操作。 **1. Neo4j 的亮点** Neo4j 是...

    neo4j-connector-apache-spark-notebooks:适用于Apache Spark的Neo4j Connector入门的笔记本系列

    用于Apache Spark Zeppelin笔记本的Neo4j连接器 适用于Apache Spark的Neo4j Connector入门的笔记本系列 docker-compose up 齐柏林飞艇笔记本 造访 Neo4j实例 默认情况下,用户名/密码为neo4j/zeppelin 造访

    spring-data-neo4j

    #### 十五、入门指南 - **使用Boot**:通过Spring Boot来快速搭建Spring Data Neo4j的应用。 - **使用STS**:使用Spring Tool Suite工具来进行开发。 - **依赖管理**:提供了Maven和Gradle的依赖配置示例。 - **...

    Neo4j Manual 2.3.0

    综上所述,Neo4j 2.3.0版本涵盖了从入门到高级应用的各个方面,无论是对于新手还是经验丰富的开发人员来说,都是一个强大且灵活的图数据库解决方案。通过深入了解其核心功能和技术细节,可以充分发挥Neo4j在处理复杂...

    .NET的Neo4j螺栓驱动程序_C#_下载

    \n对于应用程序开发人员\n本部分是为希望在应用程序项目中使用此驱动程序以连接到 Neo4j 实例或 Neo4j 集群的应用程序开发人员准备的。\n对于希望从 1.7 系列迁移到 4.0 的用户,请查看我们的迁移指南。\n获取驱动...

    neo4j安装配置入门教程

    // 创建数据库实例 GraphDatabaseService graphdb = new GraphDatabaseFactory().newEmbeddedDatabase("db"); // 开始事务 Transaction tx = graphdb.beginTx(); try { // 创建节点 Node node1 = graphdb....

    neo4j2.0 pdf

    这部分提供了对 Cypher 查询语言的基础教学,适合初学者快速入门。通过实例演示了如何创建节点、建立关系、查询数据等基本操作。 **数据建模示例** 通过具体的例子展示了如何有效地使用 Neo4j 进行数据建模。这有...

    Neo4j Operations Manual 3.0

    - **基本示例**:快速入门指南。 - **定制配置选项**:调整默认设置。 - **使用单独的头文件**:分离元数据。 - **多个输入文件**:合并多个数据源。 - **类型和标签**:定义节点和关系类型。 - **属性类型**...

    Neo4j中文使用手册以及例子.doc

    ### Neo4j中文使用手册及实例分析 #### I. 简介 ##### Neo4j的亮点 Neo4j是一款高性能、可扩展的图数据库,适用于企业级部署或作为轻量级项目的一部分。其核心优势包括: - **完整的ACID支持**:确保事务中的...

    neo4j-javascript-driver:用于JavaScript的Neo4j Bolt驱动程序

    入门资源: 4.2新增功能 包括驱动程序 在Node.js应用程序中 稳定频道: npm install neo4j-driver 预发布频道: npm install neo4j-driver@next 请注意, @next仅指向不适合生产使用的预发行版本。 要获得最新...

    grand-stack-starter:GRANDstack全栈应用程序的简单启动项目

    动手观看GRANDstack入门视频快速开始开始使用GRANDstack Starter的最简单方法是创建Neo4j Sandbox实例,并使用create-grandstack-app命令行工具。 (如果您通过Neo4j Desktop或安装Neo4j服务器在localhost上具有...

Global site tag (gtag.js) - Google Analytics