繁体   English   中英

当collection是HashMap而不是简单的List时如何使用mapBy?

[英]how to use mapBy when collection is an HashMap and not a simple List?

我有以下创建失败的实体:

 @OneToMany( fetch = FetchType.LAZY, orphanRemoval=true, mappedBy="itemA" )
 @Cascade( { CascadeType.ALL } ) 
 @MapKey( name="id.customKey" )
 private Map<String, ItemB> bMap;

它给了我一个:

Invocation of init method failed; nested exception is org.hibernate.AnnotationException: mappedBy reference an unknown target entity property

ManyToOne类属性如下:

@ManyToOne( optional=false )
@NotFound( action=NotFoundAction.EXCEPTION )
@JoinColumn( name="ID_ITEM_B", nullable=false, updatable=true, insertable=true  )
private ItemA itemA;

这段代码似乎可以与ItemB列表一起使用,当我在玩地图时出现问题……怎么回事?

使用Map时,只需添加@MapKey( name="id.customKey" ) ,不要使用mappedBy 在此处查看答案: 如何使用注释在休眠模式下映射“地图”?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM