Hibernate PersistentList和ArrayList

时间:2011-04-12 18:16:01

标签: java hibernate collections arraylist

亲爱的, ArrayList使用@ElementCollection注释时出现问题。

我需要它是ArrayList,当Hibernate从会话加载对象时,它是一个休眠持久列表。

我该如何解决这个问题?我正在使用带有hibernate注释的Hibernate,没有JPA,所以我不能做任何@PostLoad

最好的问候

1 个答案:

答案 0 :(得分:7)

使用List代替ArrayList

@ElementCollection(..)
private List elements;

如果您希望专门对ArrayList执行某些操作,则可以创建副本:

ArrayList list = new ArrayList(elements);

您需要使用接口,因为ORM使用这些接口的自定义实现来实现特定于orm的功能,例如,懒加载。 Hibernate没有ArrayList的特定子类,它有一个PersistentList,它只是List