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. PhpStorm terminal无法输入命令的解决方法

    下面小编就为大家带来一篇PhpStorm terminal无法输入命令的解决方法.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧   在使用PhpStorm时,点击下面的 ...

  2. linux kdb 内核调试器

    许多读者可能奇怪为什么内核没有建立更多高级的调试特性在里面.答案, 非常简单, 是 Linus 不相信交互式的调试器. 他担心它们会导致不好的修改, 这些修改给问题打了补丁 而不是找到问题的真正原因. ...

  3. BAT 脚本判断当前系统是 x86 还是 x64 系统

    本文告诉大家在写 BAT 脚本的时候,如何判断当前的系统是 32 位系统的还是 64 位系统 通过注册表进行判断方法 @echo OFF reg Query "HKLM\Hardware\D ...

  4. 【15.93%】【codeforces 672D】Robin Hood

    time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...

  5. VisualStudio 2019 新特性

    很多小伙伴都好奇 VisualStudio 2019 有哪些功能,下面让我介绍一些好玩的特性 在安装完成之后会看到创新的欢迎界面,这个欢迎界面支持输入关键字搜项目,同时支持选择语言平台 很多小伙伴都说 ...

  6. ie6,7不支持display:inline-block;

    解决方案: display:inline-block; *display:inline;*zoom:1; ie6:* _ ,ie7:*

  7. Java 学习笔记(4)——面向对象

    现在一般的语言都支持面向对象,而java更是将其做到很过分的地步,java是强制使用面向对象的写法,简单的写一个Hello Word都必须使用面向对象,这也是当初我很反感它的一点,当然现在也是很不喜欢 ...

  8. 驳“C语言已经死了”

    http://blog.csdn.net/xushiweizh/article/details/1476422

  9. HDU 2102 A计划 DFS与BFS两种写法 [搜索]

    1.题意:一位公主被困在迷宫里,一位勇士前去营救,迷宫为两层,规模为N*M,迷宫入口为(0,0,0),公主的位置用'P'标记:迷宫内,'.'表示空地,'*'表示墙,特殊的,'#'表示时空传输机,走到这 ...

  10. 登录密码忘记修改jenkins

    find / -type f -name 'config.xml' 然后需要删除config.xml文件中的以下内容: <useSecurity>true</useSecurity& ...