[size=large]
我做了一个测试,
[code="java"]
String hql = "SELECT a.account,d.accountId FROM Account a ,Department d where a.id=d.accountId";
Query query = getSession().createQuery(hql);
List li = query.list();
for(int i=0;i<li.size();i++){
dao.Account account = (dao.Account)li.get(i);
System.out.println(account.getAccount());
}
[/code]
这段代码,HQL不能进行多表,打出来的结果和异常是Hibernate: select account0_.account as col_0_0_, department1_.account_Id as col_1_0_ from hibernate.account account0_, hibernate.department department1_ where account0_.id=department1_.account_Id
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to dao.Account
at main.TestMain.main(TestMain.java:34)
无法进行多表查询,只能通过 级联来查询!!!! 如果查询全部数据,那sql语句太多了,不管我怎么设置检索策略!
请问,我该怎么手动去写查询呢,这样写不行啊 郁闷 :oops: 最后一点分了啊,忘大家帮助啊 :D
[/size]
[b]问题补充:[/b]
您好,我查询的就是对象啊,不是在sql语言里的表名称
[b]问题补充:[/b]
那请问我这个该怎么改呢?
[b]问题补充:[/b]
哦,我明白了,它是返回的对象数组,你第一次已经改了
呵呵 :oops:
[b]问题补充:[/b]
怎么在封装到对象里去? 哥们, 按我这个 改个列子 我看下好吗? :oops: