问题标签 [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.
java - 在企业解决方案中使用 mongodb 休眠 OGM
我想问你,如果你有任何与 .Hibernate OGM
一样好的经验mongodb
,它可以毫无顾虑地用于企业解决方案。换句话说 - 这种组合是否与例如Hibernate ORM
使用一样好,MySQL
并且也很容易设置吗?是否值得使用它 - 意味着与数据库工作的改进水平相比,设置它所需的负担水平?您更喜欢另一个 OGM 框架,甚至不使用任何框架?我前段时间读过它,但它处于该项目的早期阶段,还没有很好地工作。感谢您的建议和经验。
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 托管数据库时,你们中是否有人遇到过类似的问题?
谢谢
spring-data - Spring-Data 上的休眠 OGM 有效吗?
我想创建一个项目并使用MongoDB
and Neo4J
,两个数据库都需要使用。现在,今天的Hibernate OGM
概念是启动并支持所有 NoSQL 数据库。如果我愿意,Hibernate OGM
他们会使用 JPA apis 来实现,这对于 Hibernate 用户来说很容易使用。如果我选择 Spring-Data,我们需要同时配置Spring-Data MongoDB
并Spring-Data Neo4j
使用Spring-Data
apis。Hibernate OGM
我的团队对我们选择哪种技术感到困惑Spring-Data
。我们专注于一些点,然后去争取Spring-Data
。要点如下:
Spring-Data
Spring-Data
是一个早期的概念,在线论坛上很容易提供对的支持,但Hibernate OGM
它是新的。Spring-Data
具有 NoSQL 数据库的各种功能,但对于 Hibernate OGM,我们不确定是否提供了本幻灯片中提到的所有功能。Hibernate OGM
使用 JPA 查询和 JPA 查询根据 NoSQL 供应商查询进行翻译,我认为这会导致性能问题。但是在 Spring-Data 中,我们很容易使用Cypher Queries
和Mongo Template
.- 我也很困惑
Hibernate OGM
是否完全支持 Graph Db 功能,比如维护关系属性?
请建议我采用哪种技术。
mongodb - Glassfish 上的休眠 OGM com MongoDB 和 JTA - javax.persistence.PersistenceException
在 Glassfish 4.1 上使用 Hibernate OGM、MongoDB 和 JTA。当尝试坚持一个错误时:
和
jpa - Neo4j休眠OGM中的对象继承
我正在为 Neo4j 的 Hibernate OGM 实现做 POC。为此,我创建了以下对象:
还有一个车辆类:
它被扩展到具有简单实现的类。我按如下方式运行此代码:
当我运行它时,它失败了:
如果我注释掉与从 AutoDealership 获取车辆相关的任何内容,代码将编译并运行,并成功地将节点插入数据库。我试图将 mappedBy 目标更改为无济于事。
mongodb - 在应用程序中测量 MongoDB + Hibernate OGM 的性能
我有一个包含一些功能的应用程序(MongoDB + Hibernate OGM)。我想针对这些特定功能测量某些操作(搜索、添加、删除等)的持久性技术的性能。
因为我正在测量这些功能的性能,所以我认为最好的方法是测量应用程序内部的操作,而不是外部的操作。我不太确定这种方法是否正确。
例如,我现在做的是:
但是,这样衡量公平吗?有人有任何衡量持久性技术性能的技巧吗?基于此,我想将其与其他持久化技术(如 MySQL + Hibernate ORM 或其他 NoSQL 技术如 Cassandra)进行比较。
java - 如何在 Hibernate OGM 中禁用记录 Neo4j 查询?
我正在使用带有 Neo4j 数据库的 Hibernate OGM。
对于每个操作,例如创建新实体,都会生成许多带有 Cypher 查询的日志条目:
如何禁用此功能?
我尝试hibernate.show_sql
在persistance.xml 文件中设置属性:
,但没有结果。
mongodb - 在 WildFly 上为 MongoDB 运行 hibernate-ogm
我正在尝试以独立配置在 WildFly 8.2.0.Final 上运行 hibernate-ogm 4.1.1.Final。我已经建立了一个基于原型wildfly-javaee7-webapp-ear-archetype的 Maven 测试项目。这导致一个项目包含一个 EAR 项目,该项目具有两个子部署ejb和web。
按照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 上运行?
这可能只是一件小事,但我只是没有看到。任何帮助是极大的赞赏!
java - 覆盖休眠 OGM 用户类型限制?
我最近在沙盒平台上创建了一个 mongolab 帐户(因此没有管理员权限)。我有一个简单的测试用例应用程序将 Hibernate OGM + JPA 2.1 与我的 mongo 数据库集成。当我尝试运行我的应用程序时,我收到以下错误(重要部分):
我在这里对 Hibernate ORM 的文档进行了一些挖掘,以下几行引起了我的注意:
使用 USERNAME 定义的用户必须具有创建新数据库的权限。数据库将具有使用 DATABASE 定义的名称。接受“真”或“假”。
有什么办法可以在 Hibernate OGM 中覆盖它?或者,也许有人使用了另一个没有此限制的提供商?(试图设置 eclipselink 没有运气)
PS:我知道我可以使用创建 MongoClient 的 MongoDB java 驱动程序连接到 mongolab,已经完成了。我想坚持 JPA 设置。
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,用户:“管理员”,随机数:“######”,密钥:“#######”}
我错过了什么?任何帮助将不胜感激。