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. CCPC2018 桂林 G "Greatest Common Divisor"(数学)

    UPC备战省赛组队训练赛第十七场 with zyd,mxl G: Greatest Common Divisor 题目描述 There is an array of length n, contain ...

  2. 用webAudio和canvas实现音频可视化

    前两天遇到了要显示音频波形图的需求,因为时间紧,就直接用了wavesufer.js,这两天有空,就研究了一下怎么用webAudio实现音频的可视化. 大致流程是对音源进行解析,解析得到的数据是个频谱数 ...

  3. dotnet 通过 WMI 获取指定进程的输入命令行

    本文告诉大家如何使用 WMI 通过 Process 获取这个进程传入的命令行 使用下面代码,使用 Win32_Process 拿到所有的进程,通过 WHERE 判断当前的进程,然后拿到进程传入的命令 ...

  4. C#获取美团评价信息

    闲来无事,朋友需要一家美团店铺的评价消息,索性做个小工具. 一:第一步找到目标网站 地址:https://www.meituan.com/meishi/4460141/ 二:分析网页请求 在目标网页, ...

  5. 常用数据库连接池 (DBCP、c3p0、Druid) 配置说明(转)

    1. 引言 1.1 定义 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标.数据库 ...

  6. Java面向对象程序设计第7章1-8

    Java面向对象程序设计第7章1-8 1."程序中凡是可能出现异常的地方必须进行捕获或拋出",这句话对吗? 不对. 异常分两类,runtime异常和非runtime异常. runt ...

  7. Appium+Pytest实现app并发测试

    前言 这个功能已经写完很长时间了,一直没有发出来,今天先把代码发出来吧,有一些代码是参考网上写的,具体的代码说明今天暂时先不发了,代码解释的太详细还得我花点时间^_^, 毕竟想让每个人都能看明白也不容 ...

  8. navicat创建存储过程时报错1064

    1.这是创建的存储过程 2.一保存就会出错 3.后来上网查了一下是存储过程的参数没有设定长度导致的,我们在Navicat中创建存储过程时参数的长度需要自己动手去添加的否则就会包这种错误. 添加上参数的 ...

  9. alpha week 1/2 Scrum立会报告+燃尽图 06

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/9916 小组名称:“组长”组 组长:杨天宇 组员:魏新,罗杨美慧,王歆瑶, ...

  10. 小小知识点(二十四)什么是5G

    转自 https://www.ifanr.com/1149419 一个简单且神奇的公式 今天的故事,从一个公式开始讲起.这是一个既简单又神奇的公式.说它简单,是因为它一共只有 3 个字母.而说它神奇, ...