`

黑马程序员:SSH中DAO里多表查询HQL常见写法

 
阅读更多
------- android培训 java培训、期待与您交流!-------


SSH中DAO里多表查询HQL常见写法

当你在学SSH的时候会觉得这个很简单,但如果过几个月,你会忘得干干净净,所以还是记录下吧,一个demo

//根据用户ID找出其它,并关联用户表
public List<Object[]> findbyuserid(int userid){
   List<Object[]> list = null;
   Session session=HibernateSessionFactory.getSession();       //创建session
   int count=0;
   try {
    String hql="select a,b from TShop a,TUserInfo b where a.TUserInfo.id=b.id and a.TUserInfo.id="+userid+"";                                                     //写hql语句
    Query q=session.createQuery(hql);                                   //生成Query查询对象
    list = q.list();                                                                       //执行查询方法,返回list
   } catch (Exception e) {
    e.printStackTrace();
   }finally{
    HibernateSessionFactory.closeSession();                         //关闭session
    return list;
   }
}
}


q.uniqueResult   用于返回一个值的时候

多表查询返回一个List<Object[]>


类里遍历
for(Object[] obj:list){
      TShop shop = (TShop)obj[0];
      TUserInfo userinfo = (TUserInfo)obj[1];

}

前台遍历
<logic:present name="vipshops">
                  <logic:iterate id="viplist" name="vipshops">
                     <c:set var="shop" value="${viplist[0]}"></c:set>
                     <c:set var="userinfo" value="${viplist[1]}"></c:set>

                   </logic:iterate>
     </logic:present>


------- android培训 java培训、期待与您交流!-------


详细请查看:http://edu.csdn.net/heima -------
分享到:
评论

相关推荐

    hql多表查询

    其中,多表查询是处理复杂数据关系的关键技术,它允许开发者在一个查询语句中同时操作多个表,从而提高数据处理的效率和查询的灵活性。多表查询通常涉及到表之间的关联关系,如一对一、一对多或许多对多关系。 ### ...

    传智播客--黑马程序员 ssm+ssh 框架笔记

    SSM和SSH是Java开发中常用的两大框架组合,它们在企业级应用开发中扮演着重要角色。本笔记主要涵盖了Spring、SpringMVC、Mybatis(SSM)以及Struts、Hibernate、Spring(SSH)框架的核心概念、配置及实战应用。 **...

    HQL的几钟常见写法

    ### HQL的几种常见写法 #### 概述 HQL(Hibernate Query Language)是Hibernate框架提供的一种查询语言,它支持面向对象的语法结构,并且能够很好地与Java对象模型进行映射。通过HQL,开发者可以更加灵活地操作...

    黑马程序员_hibernate框架开发2016版讲义和笔记资料_day1_day2_day3_day4

    4.3 查询语言HQL:Hibernate Query Language是Hibernate提供的面向对象的查询语言,类似于SQL但更面向对象。 4.4 Criteria API:提供了一种更动态、类型安全的查询方式,避免硬编码HQL,提高代码可读性和可维护性。...

    2017黑马程序员第一天Hibernate讲义,笔记,源码

    【标题】中的“2017黑马程序员第一天Hibernate讲义,笔记,源码”表明这是一个关于Hibernate框架的初学者教程,由知名的IT培训机构黑马程序员在2017年制作,内容可能包括讲义、学习笔记以及相关的源代码示例。...

    SSH框架,简单的多表查询

    在多表查询中,Hibernate支持HQL(Hibernate Query Language)和Criteria API,可以方便地编写多表联查的查询语句,通过定义实体间的关系(如一对多、多对多),实现JOIN查询。 对于"CRM"库的开发,这通常涉及到...

    黑马程序员_hibernate框架开发2016版讲义和笔记资料_day02

    《黑马程序员_hibernate框架开发2016版讲义和笔记资料_day02》 本文将深入探讨2016年黑马程序员发布的Hibernate框架开发课程的第二天内容。Hibernate,一个强大的Java持久化框架,简化了数据库操作,为开发者提供了...

    SSH笔记-HQL查询、QBC、本地SQL查询

    SSH笔记-HQL查询(基于位置参数查询、基于命名参数查询、分页查询、命名查询、投影查询报表查询、内/迫切内/左外/迫切左外连接查询)、QBC(QBC检索查询、统计查询、排序查询、HQL操作数据库)、本地SQL查询

    Hibernate-HQL语句多对多写法

    "Hibernate-HQL语句多对多写法" Hibernate 是一个流行的 Java 持久层框架,它提供了强大的对象关系映射(ORM)功能,使得开发者可以方便地与数据库交互。但是,在使用 Hibernate 时,我们经常会遇到多对多关系的...

    SSH 泛型DAO分页

    4. **泛型DAO**: 在SSH框架中,泛型DAO是一种常见的设计模式,用于封装对数据库的基本操作,如增删查改。通过泛型,我们可以创建一个通用的DAO接口和实现,减少代码重复,提高代码复用。例如,我们可以创建一个`...

    Hibernate连表查询 Hibernate连表查询

    在实际开发过程中,我们经常会遇到需要从多个表中获取数据的情况,这时就需要用到连表查询。 #### 1. HBM 映射文件 在提供的内容中,出现了两个HBM映射文件:`TopProductsDeputy.hbm.xml` 和 `TopProducts.hbm.xml...

    Hibernate框架]Hql语句in中带参数的写法

    Hibernate框架Hql语句in中带参数的写法 Hibernate框架中,在使用HQL语句时,需要传递参数,而在HQL语句中使用in关键字时,需要特别注意参数的传递方式。在本文中,我们将讨论如何在HQL语句中使用in关键字带参数的...

    黑马程序员 hibernate 2016版讲义和笔记(4天全)

    《Hibernate技术深度剖析——基于黑马程序员2016版讲义与笔记》 Hibernate,作为Java领域中的一个著名持久化框架,为开发者提供了强大的对象关系映射(ORM)功能,极大地简化了数据库操作。本资料集是黑马程序员...

    SSH一对多(两表双向关联查询)

    SSH一对多(两表双向关联查询)是一种在Java Web开发中常见的数据操作方式,主要涉及到Spring、Struts和Hibernate这三大框架的集成使用。在这个场景下,我们将关注于如何通过Hibernate来实现数据库中的两个表——...

    Java:SSH-Spring整合struts2&hibernate;框架

    Hibernate支持实体类、映射文件、查询语言HQL等多种方式与数据库进行交互,提供了强大的数据检索和事务处理能力。 整合SSH框架通常包括以下几个步骤: 1. 配置Struts2:在Web项目的web.xml中配置Struts2的前端控制...

    hibernateHQL关联查询

    在实际开发中,HQL关联查询的应用场景非常广泛,特别是在需要跨多个实体进行数据检索的情况下。例如,在电子商务系统中,我们需要获取用户信息及其相关的订单信息时,就可以利用HQL关联查询来简化这一过程。此外,当...

    ssh框架的模糊查询

    在"ssh框架的模糊查询"这个主题中,我们将深入探讨如何在SSH框架下实现对数据的增删改查(CRUD)操作,以及模糊查询和分页显示功能。 首先,让我们来理解增删改查的基础。在SSH框架中,Struts2作为前端控制器处理...

    MyEclipse工程文件:SSH+druid+logback+jackson

    它提供了Session接口进行数据库交互,简化了SQL编写,同时支持 Criteria 查询和HQL(Hibernate查询语言),增强了数据访问的灵活性。 【Druid数据库连接池】 Druid是阿里巴巴开源的数据库连接池组件,具有优秀的...

    HQL多对多的查询语句分析

    在HQL中,处理多对多关系查询通常涉及到联合表(junction table)的概念。联合表是在数据库层面创建的,用于存储两个表之间的关联信息。在Java代码中,这通常通过一个中间实体或集合来表示。例如,对于学生和课程的...

Global site tag (gtag.js) - Google Analytics