我做过类似这样与HBM文件,但到目前为止,我还没有找到一个等效使用注释的东西。我希望能够做的是在连接表中创建一个关联表,其中连接表包含关联的订单列(对于此处的任何不正确的术语感到抱歉)。在非常简单的,该表可能是这样的:使用Hibernate注释操作连接表行排序
Table: Menus
-----
menu_id
Table: Items
-----
item_id
Table: Menus_Items
----
menu_id
item_id
order_by
如果我没有要求的菜单项进行排序(这个ORDER_BY列),我可以没有问题做到这一点;不过,我希望能够以编程方式在单元测试或管理工具中的Menus_Items表中订购商品。为此,我想,我还需要一个MenuItems类,对吗?是,需要
我的问题是什么注解相应的类来实现这一目标? 的类可能是这个样子(这是据我已经有了):
public class Menu {
private List<MenuItem> items;
// ...
@OneToMany
@JoinTable(name = "Menus_Items",
joinColumns = @JoinColumn(name = "menu_id"),
inverseJoinColumns = @JoinColumn(name = "item_id"))
@Cascade(value = { CascadeType.ALL, CascadeType.DELETE_ORPHAN })
@IndexColumn(name = "order_by")
public List<MenuItem> getItems() { // ...
}
} // end class Menu
是@IndexColumn正确吗?以编程方式,我如何指定MenuItems集合的顺序?我可能会做错什么?我有一种唠叨的感觉,我失去了一些明显的东西。
任何帮助非常感谢。
这做到了。谢谢。但是,我坚持使用J2EE 5,而@OrderColumn仅在J2EE 6中可用。我在Mac上,我认为我需要升级到Snow Tiger。 – richever 2010-07-08 13:52:13