我有一个Java EE应用程序,使用Hibernate。在域对象中,我将List/ArrayList更改为Set/HashSet,因为使用Set更好。
但是在我的Dao实现中遇到了问题:
public Set<Person> getAllPersons() {
SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
Session sess = sessionFactory.getCurrentSession();
Transaction tx = sess.beginTransaction();
@SuppressWarnings("unchecked")
Set<Item> items = (Set<Item>) sess.createQuery("from Item").list();
tx.commit();
return items;
}
这里出现了一个错误:
java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Set
我该如何避免这个错误?
先感谢您并致以最好的问候。