问题标签 [bidirectional-relation]
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.
graph-databases - 为什么大多数图形数据库不支持双向边?
我必须选择一个图数据库系统,很惊讶主流的不支持这个功能?
为什么数据库系统如此不受欢迎?为什么那里的开发人员似乎没有要求它?应该有我不知道的原因。
谢谢你的帮助。
java - 两个对象的双向依赖
背景
我有以下内容:
类火扩展元素,
类木材扩展元素,
合成元素的类瓷砖。
Tile 类表示世界/屏幕/画布中的一个图块,并在其中具有一些图形和逻辑功能。它合成了一个 Element 对象,因为“世界”中的每个图块都是由某种物质 (=element) 组成的。
我想实现火蔓延的功能——当火元素“接触”木元素时,我希望木元素变成火。从逻辑上讲,这应该在火元素中完成,但是这样做,我无法更改给定的瓷砖元素(例如从木头到火)。
“世界”被初始化为由木元素组成的瓦片网格,除了一个具有应该传播的火元素的瓦片。
我试过的
我试过将元素链接在一起,这意味着每个元素都可以访问他的四个最近的邻居。这样,火就可以接近附近的一块木头。这并不能解决火接触木头时更改 Tile 元素类型的问题。
我尝试将整个功能移至 Tile 类。虽然它确实解决了问题,但我不喜欢它有两个原因:
从逻辑上讲,我希望火自主行动,这意味着火是蔓延的,而不是瓷砖。
结果,Tile 类有很多只与火相关的方法(例如 spread()),这需要我检查 - “这个 tile 是由火元素组成的吗?”,这是不好的做法。
代码示例
深入
瓦片的“网格”由瓦片的二维数组(逻辑部分)和由所有瓦片(视觉部分)组成的 JavaFx 窗格组成。
当它接触到相邻的瓷砖并将其从木头变成火时,火会“蔓延”。当燃烧(=变为火)给定阈值的木头时,例如燃烧 30 块木头后,火停止蔓延。从某种意义上说,火可以跟踪它消耗的木材。
提前致谢!
orm - 未在数据库中插入外键值:无法在列中插入 Null
我正在将客户端应用程序从 Hibernate 迁移到 EclipseLink。但是在学生实体上调用persist方法时,它不会为外键插入值。数据库是oracle。地址和学生之间存在多对一的关系。
同样在生成的 SQL 中,外键列不存在。
*
*
hibernate - @OneToOne 关系中的两个问题
我正在使用 Hibernate 4.3.6.Final 和 WildFly 16。@OneToOne 关系有两个问题。
1.) 第一个问题:Unknown mappedBy in: at.home.digest.model.Expose.home, 引用属性unknown: at.home.digest.model.Home.expose"}}
这些是我的实体:
公开实体:
部署应用程序后,我收到:
2.) 第二个问题:首先,我通过从 Expose 实体中删除属性 mappedBy = "expose" 来克服第一个问题,即 Expose 实体现在看起来像:
现在我不再面临第一个问题了。但是,当保存主实体时,它不再引用相应的公开实体。相反,SQL 表 home 中的字段 expose_id 为空。:
这是我保存实体的源代码:
具有对应暴露实体的主实体被保存而不引用对应的暴露实体,即主表中的expose_id列为空。但是,相应的暴露实体与对主实体的引用一起保存,即暴露表中的列 home_id 正确地引用了主表中的相应行。
postgresql - TypeORM双向复合主键关系
一个User
可以有多个Profiles
。在User
我只想存储profileId
. 在Profile
我想存储的 id 中User
。
用户
轮廓
简而言之,我想创建两个外键。从User.profileId
到Profile.id
和从Profile.userId
到User.Id
。这是我的问题的最佳实践解决方案吗?
jpa - JPA @ManyToOne,@OneToMany 双向关系
我正在研究双向映射。我使用 @OneToOne 和 @ManyToMany 注释映射了 Team 和 Member。
主要方法
结果:
成员:[]
我想知道为什么在上面的代码中没有将“成员”添加到“团队”的“成员字段”中。先感谢您。
hibernate - 从 Hibernate 中的 JoinTable 中检索所有记录
我是 Hibernate 的新手,我正在学习关系映射。我对双向 OneToMany 关系有疑问。我有两个类:人员和车辆。我使用@JoinTable
Annotation 创建了第三个 Table person_vehicle
。
问题:如何将 joinTable 中的所有数据放入 List。我想在表格视图中显示它们,但我的问题是 joinTable 的数据有什么类型?
我的解决方案:
java - Spring Boot:请求答案中的“循环”,当实体具有双向引用时(ManyToMany,FetchType.LAZY)
再会,
我正在研究 Spring Boot。这是我的项目 - https://github.com/Alex1182-St/java-spring-jpa-postgresql.git
我有 2 个实体:
AppUserEntity - https://github.com/Alex1182-St/java-spring-jpa-postgresql/blob/master/src/main/java/com/java/javaspringjpapostgresql/entities/AppUserEntity.java
实体具有双向引用(ManyToMany、FetchType.LAZY)。
我的问题是,当我的方法(AppUserController 中的方法 appUserById2WithPost)返回实体而不是 DTO 时,我会在答案中收到“循环”。 这是这个循环的样子 -
在 Idea 的控制台中,我有这样的错误 -尝试解决异常时失败 [org.springframework.http.converter.HttpMessageNotWritableException]
当然,我可以通过返回 DTO(如在方法 appUserByIdWithPost 中)或在实体中使用注释 @JsonIdentityInfo 来解决它。
但我担心项目中仍然会出现错误。我想解决它。但我找不到它的原因。有人能帮我吗?或者这种行为是否正常?
先感谢您。
java - 使用 org.mapstruct 框架的一对多关系映射
如何使用 org.mapstruct 框架映射一对多关系?
DTO 类:
域类 -
映射器类 -
现在,上面的映射器正在映射 ScheduledJob 和 ScheduledJobParams,但 ScheduledJobParams 有 ScheduledJob 的引用。
如何将参考 ScheduledJob 映射到 ScheduledJobParams?