我有一个类List
,我想通过连接表来关联,以便同时允许1-M和M-1关系。换句话说,我想重用列表中的元素。
如果没有意义或在某种程度上不适用,请提供建议,因为我仍在尝试设计该模型的那一部分。
因此列表以这种方式映射:
@Persistent(table = "ixl_csv_metric_rel", defaultFetchGroup = "true")
@Join(column = "ixl_csv_fk")
@Order(column = "order")
@Element(dependent = "true", column = "ixl_metric_fk")
private List<IxlMetric> metrics;
问题在于,连接表是使用由ixl_csv_fk
和order
列组成的复合主键创建的,这不是我需要的。主键最好由ixl_metric_fk
列而不是order
列组成,这对我来说更有意义。
我可以禁用生成主键并稍后手动设置它,但我想知道是否有更好的方法来执行此操作?
@Join(column = "ixl_csv_fk", extensions = { @Extension(vendorName = "datanucleus", key = "primary-key", value = "false") })
答案 0 :(得分:0)
别无他法。禁用它并自己手动覆盖它。 JDO提供了唯一合理的方法来匹配类定义和List字段。