休眠映射,在未映射的类上
Posted
技术标签:
【中文标题】休眠映射,在未映射的类上【英文标题】:Hibernate mapping, on a unmapped class 【发布时间】:2010-03-19 09:40:17 【问题描述】:我有 2 张桌子... Challenge 和 ChallengeYear,ChallengeYear 只是创建一个挑战年份列表。
我只想将 Challenge 设为一个实体,其中包含 List 年份的列表。这可能吗?
我已经查看了 @SecondaryTable 以及 @JoinColumn 和 @OneToMany,但它们都不能解决问题,或者我忽略了一些东西。
有人可以帮我吗?
您好, 一月
【问题讨论】:
您希望如何将它们保存在数据库中?挑战年包含什么?是只有一个包含年份的整数,还是更多? 它应该像 @OneToMany(CascadeType.ALL, FetchType.EAGER) ChallengeYear 包含对 Challenge 的 FK 约束,然后是列年份。这样就有可能增加几年的挑战 【参考方案1】:您的模型中的年份是什么,它是整数吗?
如果是,您可以使用 @CollectionOfElements 注释您的 Challenge.getYears 方法
喜欢:
@CollectionOfElements
@JoinTable(
table=@Table(name="ChallengeYear"),
joinColumns = @JoinColumn(name="challengeId")
)
@Column(name="year", nullable=false)
List<Integer> getYears()
...
【讨论】:
很好用,谢谢,我遇到了@CollectionOfElements 注释,但不知道如何配置它。无论如何,谢谢 @Jan - 如果此答案对您有用,请将其标记为已接受(投票计数器下方的勾号) @Jan:我很高兴......休眠映射参考文档可能很难阅读@Bozho:谢谢;-)以上是关于休眠映射,在未映射的类上的主要内容,如果未能解决你的问题,请参考以下文章