neo4j和Java

Neo4j提供JAVA API以编程方式执行所有数据库操作。

它支持两种类型的API:

  • Neo4j的原生的Java API
  • Neo4j Cypher Java API

Neo4j原生Java API是一种低级别的纯JAVA API,用于执行数据库操作。 Neo4j Cypher Java API是简单而强大的JAVA API,用于执行所有CQL命令以执行数据库操作。

https://www.w3cschool.cn/neo4j/neo4j_java_environment_setup.html

原生Java API

https://www.w3cschool.cn/neo4j/neo4j_native_java_api_example.html

Cypher - API示例

https://www.w3cschool.cn/neo4j/neo4j_cypher_api_example.html

目前还没有涉及Java这一块,有待于后续的复习笔记补充

Spring DATA Neo4J - 简介

Spring是开源框架,很容易开发基于企业Java的应用程序。 它用Java语言编写。

Spring Framework提供了以下模块来处理基于Java的应用程序的DAO层

  • Spring JDBC

  • Spring ORM

  • Spring DATA

    Spring数据模块的优点:

    • 消除DAO层中的boiler plate代码

    • DAO层中的工件少

    • 易于开发和维护

    • 改进开发过程

    Spring数据模块功能:

    • 支持基于XML的实体映射

    • 支持基于注释的实体映射

    • 支持分页

    • 支持事务

    • 更少的DAO层工件 - 实现存储库

    Spring DATA Neo4j模块具有与上述相同的优点和特点。

    Spring DATA Neo4j模块

关系数据库(Oracle,MySQL等等)

没有SQL数据库(MongoDB,Redis,Apache Cassandra等)

无SQL图形数据库(Neo4j等)

Spring DATA Neo4j存储库

它提供了不同的API来支持不同的场景

  • GraphRepository
  • GraphTemplate
  • CrudRepository
  • PaginationAndSortingRepository

    Neo4j驱动程序

    当我们使用Spring DATA Neo4j模块API来执行一些数据库操作时,Spring DATA Neo4j Jars在内部使用这些驱动程序Jars来交互和执行Neo4j数据库操作。

    Neo4j图数据库

    它是存储我们的图形数据的实际Neo4j DB服务器。

    如何在Eclipse IDE中设置Maven Java项目,以使用Spring DATA Neo4j模块开发Spring Framework应用程序。

    第1步 - 在Eclipse IDE中创建Maven项目第2步-在Eclipse IDE中打开pom.xml文件,并添加以下主要依赖关系

    Spring DATA Neo4j模块Jar文件

    <dependency>
    <groupId> org.springframework.data </groupId>
    <artifactId> spring-data-neo4j </artifactId>
    <version> 3.1.2.RELEASE </version>
    </dependency>

    Neo4j Jar文件,由Spring DATA Neo4j模块Jar文件内部使用

    <dependency>
    <groupId> org.neo4j </groupId>
    <artifactId> neo4j-kernel </artifactId>
    <version> 2.1.3 </version>
    </dependency>

    Java事务API jar文件,由Spring DATA Neo4j模块Jar文件内部使用

    <dependency>
    <groupId> javax.transaction </groupId>
    <artifactId> jta </artifactId>
    <version> 1.1 </version>
    </dependency>

    Java验证API jar文件,由Spring DATA Neo4j模块Jar文件内部使用

    <dependency>
    <groupId> javax.validation </groupId>
    <artifactId> validation-api </artifactId>
    <version> 1.0.0.GA </version>
    </dependency>

     

    第3步-完成pom.xml文件

    <project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
    http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion> 4.0.0 </modelVersion>
    <groupId> com.tp.neo4j </groupId>
    <artifactId> springdata-neo4j </artifactId>
    <version> 1.0 </version> <dependencies>
    <dependency>
    <groupId> org.springframework.data </groupId>
    <artifactId> spring-data-neo4j </artifactId>
    <version> 3.1.2.RELEASE </version>
    </dependency> <dependency>
    <groupId> org.neo4j </groupId>
    <artifactId> neo4j-kernel </artifactId>
    <version> 2.1.3 </version>
    </dependency> <dependency>
    <groupId> javax.transaction </groupId>
    <artifactId> jta </artifactId>
    <version> 1.1 </version>
    </dependency> <dependency>
    <groupId>javax.validation</groupId>
    <artifactId>validation-api</artifactId>
    <version>1.0.0.GA</version>
    </dependency> </dependencies>
    </project>

最后是一个援引的实例

https://www.w3cschool.cn/neo4j/neo4j_spring_data_example.html

内容很多很复杂,需要慢慢研究

package com.tp.springdata.neo4j.domain;

import org.springframework.data.neo4j.annotation.GraphId;
import org.springframework.data.neo4j.annotation.NodeEntity; @NodeEntity
public class GoogleProfile { @GraphId
private Long id; private String name;
private String address;
private String sex;
private String dob; // Getter for id
// Setters and Getters for rest of properties
// implement equals() and hashCode() methods
}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
所有的受害者和嫌疑人的关系导出来,是不是也在一方面有力地节省了在调查取证上的困难,甚至说我也许能找到和某一个大人物的关系呢科科。

关于neo4j初入门(5)的更多相关文章

  1. 关于neo4j初入门(4)

    关于admin管理员 数据库备份和恢复 Neo4j数据库备份 步骤1 -点击“Neo4j Community”,如下图所示 Windows“开始”按钮>> "All Progra ...

  2. 关于neo4j初入门(3)

    这一章主要是函数的部分 UPPER 它需要一个字符串作为输入并转换为大写字母. UPPER (<input-string>)<input-string>可以是来自Neo4J数据 ...

  3. 关于neo4j初入门(2)

    DELETE删除 删除节点及相关节点和关系. DELETE <node-name-list> DELETE <node1-name>,<node2-name>,&l ...

  4. 关于neo4j初入门(1)

    图形数据库也称为图形数据库管理系统或GDBMS. Neo4j的官方网站:http://www.neo4j.org Neo4j的优点 它很容易表示连接的数据 检索/遍历/导航更多的连接数据是非常容易和快 ...

  5. SpringBoot 初入门

    SpringBoot 初入门 关于介绍什么之类的就不讲了,主要做一下学习记录. 1. 启动方式 IDEA 启动 命令行启动: mvn spring-boot:run 部署到服务器启动: 先进行打包, ...

  6. Neo4j安装&入门&一些优缺点

    本篇将介绍Neo4j的安装,入门,和自己使用了一段时间后发现的优点缺点,争取简洁和实用. 如果你是第一次接触Neo4j,并且之前也都没接触过类似的Graph Database的话,建议先浏览一下我之前 ...

  7. Neo4j安装&入门&一些优缺点(转)

    本篇将介绍Neo4j的安装,入门,和自己使用了一段时间后发现的优点缺点,争取简洁和实用. 如果你是第一次接触Neo4j,并且之前也都没接触过类似的Graph Database的话,建议先浏览一下我之前 ...

  8. Nginx - Windows下Nginx初入门

    公司刚使用nginx,预先学习下.鉴于机器没有Linux环境,在Windows熟悉下. 下载 目前(2015-07-11),nginx的稳定版本是1.8.0,在官网下载先,windows版的nginx ...

  9. 坚持自学的第二天,bootstrap初入门

    前言 昨天,初步学完了jekyll目录结构与Liquid语法的应用与认识. 日志 今天刚入门,做了一个bootstrap导航栏,但是选中状态不行,找了JS中写好的API,写法与视频中讲的有点不一样,但 ...

随机推荐

  1. printk函数 用查询来调试

    前面一节描述了 printk 是任何工作的以及怎样使用它. 没有谈到的是它的缺点. 大量使用 printk 能够显著地拖慢系统, 即便你降低 cosole_loglevel 来避免加载控制 台设备, ...

  2. linux进程延迟

    #include <linux/wait.h> long wait_event_interruptible_timeout(wait_queue_head_t *q, condition, ...

  3. 原生js实现继承

    在多数语言中继承都很重要.JavaScript是一个基于原型的语言,这意味着对象可以直接从其他对象继承.以下列出几种常见的js继承方式. 原型链继承 function Father(){ this.s ...

  4. poj/OpenJ_Bailian - 2528 离散化+线段树

    传送门:http://bailian.openjudge.cn/practice/2528?lang=en_US //http://poj.org/problem?id=2528 题意: 给你n长海报 ...

  5. LabWindows/CVI基础

    1.LabWindows/CVI了解 提到NI公司,大家可能最先联想到的是NI公司推出的LabVIEW软件.LabWindows/CVI与LabVIEW相比,主要应用在各种测试.控制.故障分析及信息处 ...

  6. 在linux下find和grep

    在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find.grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们.本文结构如下: find命令 find命令的一般形式 ...

  7. Mysql的SQL优化指北

    概述 在一次和技术大佬的聊天中被问到,平时我是怎么做Mysql的优化的?在这个问题上我只回答出了几点,感觉回答的不够完美,所以我打算整理一次SQL的优化问题. 要知道怎么优化首先要知道一条SQL是怎么 ...

  8. Volatile是用于解决什么问题,谈谈实现原理

    一.volatile的作用 通常情况下我们可以通过Synchronized关键字来解决这些个问题,不过如果对Synchronized原理有了解的话,应该知道Synchronized是一个比较重量级的操 ...

  9. mysql主从之配置基本环境

    实验环境 master  192.168.132.121 主库 slave     192.168.132.122 从库 一 mysql的使用介绍 1.1 mysql单台服务器特点 缺点 单台服务器如 ...

  10. 调用第三方库时需注意MD/MT的链接编译方式(遇到的坑记录)

    MD与/MT编译 1./MD是动态库链接方式编译 (DEBUG版本是/MDd) 2./MT是静态库链接方式编译 (DEBUG版本是/MTd) 编译器不会检查到的问题 我今天遇到的记录下来 当你调用第三 ...