【发布时间】:2009-12-12 10:16:18
【问题描述】:
我有一个 Hibernate 类,它本质上只是对大量集合的包装。
所以这个类(大量简化/伪)类似于:
@实体 公共类 MyClass { @OneToMany 地图1 @OneToMany 地图2 @OneToMany 地图3 AddToMap1(); AddToMap2(); AddToMap3(); RemoveFromMap1(); RemoveFromMap2(); RemoveFromMap3(); DoWhateverWithMap1(); DoWhateverWithMap2(); DoWhateverWithMap3(); }等等。然后,这些地图中的每一个都有一些与之关联的方法(添加/删除/询问/等)。
你可以想象,当我添加第 10 个左右的集合时,这个类的规模变得有点荒谬了。
我想做的事情是这样的:
@实体 公共类 MyClass { 类WrappingMap1; 类WrappingMap2; 类WrappingMap3; }所有各种方法都包含在这些类中:
公共类 ClassWrappingMap1 { @OneToMany 地图 添加地图(); RemoveFromMap(); DoWhateverWithMap(); }我想也许我可以为此使用@Embedded,但我似乎无法让它工作(Hibernate 甚至没有尝试将 Map 持久化到 wrapperClass 中)。
以前有人做过这样的事情吗?有什么提示吗?
非常感谢,
内德
【问题讨论】:
-
你能用@Embedded 注释说明你尝试了什么吗?
-
Juha - 我完全按照你的代码(“你可以尝试这样的事情”)做了什么。我已经在 Hibernate 论坛上发帖了——让我们看看这些人中是否有人可以描述最佳实践之类的。非常感谢您的回答。
标签: hibernate wrapper hibernate-mapping