问题标签 [hibernate-ogm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
517 浏览

java - 在企业解决方案中使用 mongodb 休眠 OGM

我想问你,如果你有任何与 .Hibernate OGM一样好的经验mongodb,它可以毫无顾虑地用于企业解决方案。换句话说 - 这种组合是否与例如Hibernate ORM使用一样好,MySQL并且也很容易设置吗?是否值得使用它 - 意味着与数据库工作的改进水平相比,设置它所需的负担水平?您更喜欢另一个 OGM 框架,甚至不使用任何框架?我前段时间读过它,但它处于该项目的早期阶段,还没有很好地工作。感谢您的建议和经验。

0 投票
1 回答
1070 浏览

mongodb - 无法使用 persistence.xml 和休眠 ogm 4.1.1 从本地机器连接到 Openshift 的 MongoDB

我正在努力将我在本地机器上运行的 jboss 连接到 Openshift 中的 MongoDB 数据库。

使用本地数据库(localhost:27017)可以正常工作。

我的persistence.xml:

我运行了 rch 端口转发命令。

它返回了正确的端口转发:

而且我可以使用连接到 mongo 数据库

但是当我尝试使用上面展示的persistence.xml 启动我的jboss 服务器时。它总是尝试连接到 localhost:27017。返回此错误:

在尝试使用 persistence.xml 从本地服务器连接到 Openshift 托管数据库时,你们中是否有人遇到过类似的问题?

谢谢

0 投票
1 回答
2298 浏览

spring-data - Spring-Data 上的休眠 OGM 有效吗?

我想创建一个项目并使用MongoDBand Neo4J,两个数据库都需要使用。现在,今天的Hibernate OGM概念是启动并支持所有 NoSQL 数据库。如果我愿意,Hibernate OGM他们会使用 JPA apis 来实现,这对于 Hibernate 用户来说很容易使用。如果我选择 Spring-Data,我们需要同时配置Spring-Data MongoDBSpring-Data Neo4j使用Spring-Dataapis。Hibernate OGM我的团队对我们选择哪种技术感到困惑Spring-Data。我们专注于一些点,然后去争取Spring-Data。要点如下:

  1. Spring-DataSpring-Data是一个早期的概念,在线论坛上很容易提供对的支持,但Hibernate OGM它是新的。
  2. Spring-Data具有 NoSQL 数据库的各种功能,但对于 Hibernate OGM,我们不确定是否提供了本幻灯片中提到的所有功能。
  3. Hibernate OGM使用 JPA 查询和 JPA 查询根据 NoSQL 供应商查询进行翻译,我认为这会导致性能问题。但是在 Spring-Data 中,我们很容易使用Cypher QueriesMongo Template.
  4. 我也很困惑Hibernate OGM是否完全支持 Graph Db 功能,比如维护关系属性?

请建议我采用哪种技术。

0 投票
1 回答
340 浏览

mongodb - Glassfish 上的休眠 OGM com MongoDB 和 JTA - javax.persistence.PersistenceException

在 Glassfish 4.1 上使用 Hibernate OGM、MongoDB 和 JTA。当尝试坚持一个错误时:

0 投票
1 回答
364 浏览

jpa - Neo4j休眠OGM中的对象继承

我正在为 Neo4j 的 Hibernate OGM 实现做 POC。为此,我创建了以下对象:

还有一个车辆类:

它被扩展到具有简单实现的类。我按如下方式运行此代码:

当我运行它时,它失败了:

如果我注释掉与从 AutoDealership 获取车辆相关的任何内容,代码将编译并运行,并成功地将节点插入数据库。我试图将 mappedBy 目标更改为无济于事。

0 投票
1 回答
471 浏览

mongodb - 在应用程序中测量 MongoDB + Hibernate OGM 的性能

我有一个包含一些功能的应用程序(MongoDB + Hibernate OGM)。我想针对这些特定功能测量某些操作(搜索、添加、删除等)的持久性技术的性能。

因为我正在测量这些功能的性能,所以我认为最好的方法是测量应用程序内部的操作,而不是外部的操作。我不太确定这种方法是否正确。

例如,我现在做的是:

但是,这样衡量公平吗?有人有任何衡量持久性技术性能的技巧吗?基于此,我想将其与其他持久化技术(如 MySQL + Hibernate ORM 或其他 NoSQL 技术如 Cassandra)进行比较。

0 投票
1 回答
378 浏览

java - 如何在 Hibernate OGM 中禁用记录 Neo4j 查询?

我正在使用带有 Neo4j 数据库的 Hibernate OGM。

对于每个操作,例如创建新实体,都会生成许多带有 Cypher 查询的日志条目:

如何禁用此功能?

我尝试hibernate.show_sql在persistance.xml 文件中设置属性:

,但没有结果。

0 投票
0 回答
1369 浏览

mongodb - 在 WildFly 上为 MongoDB 运行 hibernate-ogm

我正在尝试以独立配置在 WildFly 8.2.0.Final 上运行 hibernate-ogm 4.1.1.Final。我已经建立了一个基于原型wildfly-javaee7-webapp-ear-archetype的 Maven 测试项目。这导致一个项目包含一个 EAR 项目,该项目具有两个子部署ejbweb

按照Hibernate OGM 文档中的说明,我下载并解压缩了 4.1.1.Final 版本的预打包模块。我还添加了jboss-deployment-structure.xml(到 EAR 项目的src/main/application/META-INF/目录)并使用“mongodb”作为我的数据提供者。

在项目中,我将 Hibernate OGM BOM 添加到我的顶级 pom 中(不是 EAR pom,而是项目 pom;WildFly 的其他 BOM 也在其中声明):

现在,由于我想在 EJB 模块中包含我的 JPA 实体,因此根据入门指南,我在 EJB 项目的 pom 中添加了 Hibernate OGM 依赖项:

persistence.xml 如下所示:

现在在 EJB 项目中有两个由 标记的实体@Entity,我想从定义 JAX-RS 端点的 Web 模块访问它们。从演示项目中借用的示例如下所示:

使用 Maven 目标部署项目clean package wildfly:deploy失败

虽然我的 Maven 专业知识非常有限,但我认为这是由于依赖配置错误造成的。

更令人困惑(至少对我而言):当我(重新)移动jboss-deployment-structure.xml时,上面的异常消失并且项目已正确部署,但随后出现以下错误:

我留下了堆栈跟踪的某些部分,因此您可以看到 OGM 模块确实已加载。

所以最后,我有两个问题:

  • 如何让我的项目使用 WildFly 提供的模块?没有部署结构XML,依赖只是打包到EAR中,但是我想使用AS提供的模块
  • 我一般如何让 Hibernate OGM 在 WildFly 上运行?

这可能只是一件小事,但我只是没有看到。任何帮助是极大的赞赏!

0 投票
1 回答
174 浏览

java - 覆盖休眠 OGM 用户类型限制?

我最近在沙盒平台上创建了一个 mongolab 帐户(因此没有管理员权限)。我有一个简单的测试用例应用程序将 Hibernate OGM + JPA 2.1 与我的 mongo 数据库集成。当我尝试运行我的应用程序时,我收到以下错误(重要部分):

我在这里对 Hibernate ORM 的文档进行了一些挖掘,以下几行引起了我的注意:

使用 USERNAME 定义的用户必须具有创建新数据库的权限。数据库将具有使用 DATABASE 定义的名称。接受“真”或“假”。

有什么办法可以在 Hibernate OGM 中覆盖它?或者,也许有人使用了另一个没有此限制的提供商?(试图设置 eclipselink 没有运气)

PS:我知道我可以使用创建 MongoClient 的 MongoDB java 驱动程序连接到 mongolab,已经完成了。我想坚持 JPA 设置。

0 投票
1 回答
496 浏览

mongodb - jbossews 登录 openshift 显示 com.mongodb.CommandFailureException:{ "serverUsed":"127.xx2.xxx.xx0:27017","ok":0.0,"errmsg":"unauthorized"}

jbossews.log 段:

引起:com.mongodb.CommandFailureException: { "serverUsed" : "127.xxx.xx3.xx0:27018" , "ok" : 0.0 , "errmsg" : "unauthorized"} at com.mongodb.CommandResult.getException(CommandResult .java:76) 在 com.mongodb.CommandResult.throwOnError(CommandResult.java:131)

mongodb.log 段:我认为它给了我上述异常,因为“命令被拒绝:{ listDatabases:1 }”行。

4 月 12 日星期日 12:30:24.150 [conn1] 验证 db:admin { 验证:1,nonce:“#####”,用户:“admin”,密钥:“*”}
4 月 12 日星期日 12:31:54.580 [conn3] 验证 db:mydb { 验证:1,用户:“admin”,nonce:“#######”,密钥:“#######”}
4 月 12 日星期日 12:31:54.582 [conn3] command denied: { listDatabases: 1 }
Sun Apr 12 13:20:14.781 [conn4] authenticate db: admin { authenticate: 1, user: "admin", nonce: "######", key: "#######" }
Sun Apr 12 13:20:15.031 [conn4] command mydb.$cmd command: { $eval: CodeWScope( function (){ return db.getCollectionNames(); }, {}) , args: {} } ntoreturn:1 keyUpdates:0 locks(micros) W:223980 reslen:109 224ms
Sun Apr 12 13:20:15.141 [conn5] 验证数据库:管理员 { 验证:1,用户:“管理员”,随机数:“######”,密钥:“#######”}

我错过了什么?任何帮助将不胜感激。