登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

zghbwjl的博客

java实战天地

 
 
 

日志

 
 

HQL 多表查询  

2010-06-17 13:36:07|  分类: java |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

实体类

InfoFIle.java

     private Long id;
     private String fileId;
     private String title;
     private String subtitle;
     private Integer filetype;
     private Date updatetime;
     private String author;

InfoFileOther.java

     private Long id;
     private Long clicknum;
     private Long downloadnum;
     private String fileId;
     private String varchar1;
     private String varchar2;
     private String varchar3;

String hql =" from InfoFile as a , InfoFileOther as b where  a.fileId = b.fileId ";

hql中select  a.id,b,id from .....返回的是Object[], 一个对象数组

因此这里有一种方法可以得到表连接返回的数据

list = this.getHibernateTemplate().find(hql);

if(list != null){
         Iterator it =list.iterator();
         while(it.hasNext()){
          Object[] o =(Object[])it.next();
          InfoFile info =(InfoFile)o[0];      //得到InfoFile对象

          InfoFileOther ifo=(InfoFileOther)o[1];   //得到InfoFileOther

           System.out.println(info.getId());   //对数据进行操作

        }

}

遍历:

 <c:forEach items="${pagination.list}" var="e">
                <tr bgcolor="#FFFFFF" align="center" valign="middle">
                    <td class="s12">${e[0].name}</td>
                    <td class="s12">${e[0].name}</td>
                   <td class="s12">
                     ${e[1].zxye}
                  </td>
                    <td>
                   
                    </td>
                </tr>
            </c:forEach>

  评论这张
 
阅读(3534)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018