我想我從休眠使用了下面的代碼AdminPopulate類型的列表轉換,我得到這個錯誤線程「main」中的異常java.lang.ClassCastException:[Ljava.lang.Object;不能轉換爲model.AdminPopulate
異常在線程「主要」 java.lang.ClassCastException:[Ljava .lang.Object;不能轉換爲model.AdminPopulate
public class Test
{
public static void main(String[] args)
{
SubUser subUser=new SubUser();
List subUserList=subUser.getSubUserAll();
List<AdminPopulate> subUserListAdminPop=new ArrayList<AdminPopulate>();
for(Object p:subUserList)
{
subUserListAdminPop.add((AdminPopulate)p);
}
for(AdminPopulate p:subUserListAdminPop)
{
System.out.println("first ="+p.getFirstName());
}
}
}
....這就是getSubUserAll()方法
public List getSubUserAll()
{
Session session=null;
List resultsList=null;
try
{
CreateHibernateSession hbSession=new CreateHibernateSession();
session=hbSession.getHBSession();
String sql = "SELECT SubUser.FirstName,\n" +
"SubUser.LastName,\n" +
"SubUser.UserName,\n" +
"SubUserType.Name\n" +
"FROM SubUser\n" +
"INNER JOIN SubUserType ON SubUser.idSubUserType = SubUserType.idSubUserType\n" +
"WHERE SubUserType.idSubUserType != 0";
Query query = session.createSQLQuery(sql);
resultsList = query.list();
return resultsList;
}
catch(Exception ex)
{
ex.printStackTrace();
}
finally
{
session.close();
}
return resultsList;
}
這意味着你正在將'Object'的一個實例投射到'model.AdminPopulate',這不是一個可接受的投射。 – Sufian 2015-02-10 10:14:36
@Sufian:我確信他已經知道了...... – 2015-02-10 10:17:20
@JustCause一廂情願的想法。如果那是真的,他不會這樣問。 – Sufian 2015-02-10 10:22:31