neo4j安装

在下面的视频中,我展示了一个使用Neo4J数据库和Neo4J OGM的Quarkus应用程序示例。

看一下GitHub上的示例项目。

我为咖啡豆创建了一个示例域,其中包含我们可以查询和匹配的某些风味配置文件。 红色节点是来自某个国家/地区的咖啡豆,味道像某些口味。 豆类原产国也因某些风味而“闻名”。


在当前的1.4.2.Final版本中,Quarkus带有基本的Neo4J支持,但是在撰写本文时还没有包括对OGM映射的支持。 但是,我们可以通过一个简单的生产者添加支持,该生产者公开Neo4J OGM SessionFactory

 import org.neo4j.ogm.config.Configuration;import org.neo4j.ogm.session.SessionFactory;...@ApplicationScopedpublic class SessionFactoryProducer { public static final String PACKAGE = "com.sebastian_daschner.coffee.entity" ; @ConfigProperty (name = "quarkus.neo4j.uri" )String databaseUri;@ConfigProperty (name = "quarkus.neo4j.authentication.username" )String username;@ConfigProperty (name = "quarkus.neo4j.authentication.password" )String password;@ProducesSessionFactory produceSessionFactory() {Configuration neoConfig = new Configuration.Builder().uri(databaseUri).credentials(username, password).useNativeTypes().build();return new SessionFactory(neoConfig, PACKAGE);}void disposeSessionFactory( @Disposes SessionFactory sessionFactory) {sessionFactory.close();}}

现在,我们可以将SessionFactory注入我们的bean中,并使用它来查询图形数据库:

 import org.neo4j.ogm.session.*;...@ApplicationScopedpublic class CoffeeBeans { @InjectSessionFactory sessionFactory;public List<CoffeeBean> getCoffeeBeans() {Session session = sessionFactory.openSession();return new ArrayList<>(session.loadAll(CoffeeBean. class ,new SortOrder( "name" ), 1 ));}public List<CoffeeBean> getCoffeeBeansSpecificFlavor(String flavor) {Session session = sessionFactory.openSession();Iterable<CoffeeBean> result = session.query(CoffeeBean. class ,"MATCH (b:CoffeeBean)-[:TASTES]->(:Flavor {description: $flavor})\n" +"MATCH (b)-[isFrom:IS_FROM]->(country)\n" +"MATCH (b)-[tastes:TASTES]->(flavor)\n" +"RETURN b, collect(isFrom), collect(country)," +" collect(tastes), collect(flavor)\n" +"ORDER by b.name;" ,Map.of( "flavor" , flavor)); return resultList(result);}...}

我的示例图如下所示,其中CoffeeBean对象是通过Neo4J OGM映射的:

 import org.neo4j.ogm.annotation.*;...@NodeEntitypublic class CoffeeBean { @Idpublic String name; @Relationship ( "IS_FROM" )public Set<Origin> origins = new HashSet<>(); @Propertypublic Roast roast; @Relationship ( "TASTES" @Relationship "TASTES" )public Set<FlavorProfile> flavorProfiles = new HashSet<>(); ...}

观看视频,并查看GitHub上的项目以获取完整图片。

玩得开心探索您的图表! 作为进一步的练习,您可以编写查询来匹配具有某种风味的咖啡豆作为其“主要”风味(百分比最高的咖啡豆)或具有相似风味特征的咖啡豆等。

翻译自: https://www.javacodegeeks.com/2020/05/neo4j-ogm-with-quarkus.html

neo4j安装

neo4j安装_Neo4J OGM与Quarkus相关推荐

  1. neo4j安装_Neo4J和Enterprise Java的撤消功能

    neo4j安装 我创建了一个示例,说明如何在使用Neo4J数据库的Quarkus应用程序中实现撤消功能. 从用户的角度来看,撤消操作可能看起来并不引人注目,但是一旦您知道需要在数据库端考虑的内容,它就 ...

  2. neo4j安装_neo4j 社区版win10 下安装

    准备工作: Neo4j下载网址:https://neo4j.com/download-center/#releases ava jdk官网下载:https://www.oracle.com/techn ...

  3. Neo4J OGM与Quarkus

    在下面的视频中,我演示了一个使用Neo4J数据库和Neo4J OGM的Quarkus应用程序示例. 看一下GitHub上的示例项目 . 我为咖啡豆创建了一个示例域,其中包含我们可以查询和匹配的某些风味 ...

  4. ogm neo4j_Neo4J OGM与Quarkus

    ogm neo4j 在下面的视频中,我演示了一个使用Neo4J数据库和Neo4J OGM的Quarkus应用程序示例. 看一下GitHub上的示例项目 . 我为咖啡豆创建了一个示例域,其中包含我们可以 ...

  5. 使用neo4j_知识图谱Task00:Neo4j安装配置

    知识图谱开源内容: https://github.com/datawhalechina/team-learning-nlp/tree/master/KnowledgeGraph_Basic 19 学习 ...

  6. Windows 10 64位系统下Neo4j安装教程(2021.1.13)

    Win 10安装Neo4j图数据库 1.Neo4j简介 2.Neo4j安装 2.1 查看安装好的JDK版本 2.1.1 JDK 11下载与安装 2.1.2 JDK8和JDK11共存 2.2 安装Neo ...

  7. 全网最详细的Neo4j安装教程

    全网最详细的Neo4j安装教程 一.前言 Neo4j是一个高性能的NOSQL图形数据库,它将结构化数据存储在网络上而不是表中.它是一个嵌入式的.基于磁盘的.具备完全的事务特性的Java持久化引擎,但是 ...

  8. neo4j安装详细步骤(小白版)

    (血战一下午,终于把NEO4J安装好了,很多教程还是非常友好的,但对于像我这样的小白,只想说各位大佬真的好强,而我差一步都不得行.) 参考:https://blog.csdn.net/konggu_y ...

  9. Neo4j安装及简单使用

    一.Neo4j和图数据库简介 neo4j是基于Java语言编写图形数据库.图是一组节点和连接这些节点的关系.图形数据库也被称为图形数据库管理系统或GDBMS. Neo4j的是一种流行的图形数据库. 其 ...

最新文章

  1. 神经网络变成小怪兽,还能互相 battle!这款游戏用最简单的方式训练神经网络...
  2. php header 重定向 url不变_PHP实现页面跳转功能
  3. BZOJ4076 : [Wf2014]Maze Reduction
  4. 【Android 逆向】整体加固脱壳 ( DexClassLoader 加载 dex 流程分析 | 类加载器构造函数分析 | DexPathList 引入 )
  5. OpenGL超级宝典笔记——遮挡查询 [转]
  6. python输出时间_Python获取并输出当前日期时间
  7. 获取python脚本的返回值_Python多线程获取返回值代码实例
  8. 【学习笔记】卡尔曼滤波中的协方差矩阵
  9. 脚本造成web浏览器运行速度减慢_脚本导致ie运行缓慢|ie8 提示脚本运行缓慢|脚本导致运行速度减慢...
  10. 【UE4_蓝图】录制麦克风声音/系统声音并输出保存WAV文件
  11. 笔记本开机密码忘记了怎么解决,消除笔记本密码
  12. mysql explain不准确_mysql explain预估剖析
  13. 搭建 VuePress 站点必做的 10 个优化
  14. (《机器学习》完整版系列)第5章 神经网络——5.2 RBF网络(单层RBF就可解决异或问题)与ART网络(实现“自适应谐振”)
  15. 《WEB性能测试实战》之WEB性能测试分析
  16. ERROR 1062 (23000): ALTER TABLE causes auto_increment resequencing, resulting in duplicate entry '1'
  17. 数据结构——行车路线规划(大路小路)
  18. 程序设计与算法三~C++面向对象程序设计~北大郭炜MOOC学习笔记~第二章:类和对象初步(新标准C++程序设计)
  19. com.oracle:ojdbc7:jar:12.1.0.2 was not found in
  20. 关于东芝笔记本电脑无法用GHOST的解决办法

热门文章

  1. ][互动大奖] Webby Awards 2012 第16届威比奖
  2. 机器学习(三)防止语句歧义、平凡解、支持向量机
  3. Android支付接入(七):Google In-app-Billing
  4. 移远之Quectel_QuecPython_EC600S 开发板小记(上)
  5. 计算机初级证书 英语怎么说,常见职业资格证书英文翻译(含英语、计算机等)...
  6. comsol仿真-关于肌肤效应
  7. 前端学习笔记(this)
  8. 数据分析小实验(下)
  9. NIUSHOP wap端首页浮层广告设置
  10. svm对未知数据的分类_【干货分享】支持向量机学习「下」利用SVM对歌曲进行分类...