`
jiaguwen123
  • 浏览: 411032 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

hibernate查询多对多数据范例

阅读更多

public class StuDao<T> extends BaseDao {
 private TeaDao<Teachers> teaDao = new TeaDao<Teachers>();

 /*
  * 查询多对多数据
  */
 public Map<String, List<T>> queryAllStudentsInfo(boolean isQuerySingle,
   Integer stuId) {
  Map<String, List<T>> map = new HashMap<String, List<T>>();
  List<Teachers> teaList = new ArrayList<Teachers>();
  Session session = super.getSession();
  List<Students> stuList = null;
  if (isQuerySingle) {
   stuList = session.createQuery(" from Students s where s.stuid=?")
     .setInteger(0, stuId).list();
  } else {
   stuList = session.createQuery(" from Students s").list();
  }
  int listSize = stuList.size();
  for (int i = 0; i < listSize; i++) {
   Students stu = stuList.get(i);
   Set<Teachers> teaSet = stu.getTeachers();
   Iterator<Teachers> ite = teaSet.iterator();
   while (ite.hasNext()) {
    Teachers queryTea = ite.next();
    Teachers newTea = new Teachers();
    Integer teaId = queryTea.getTeaid();
    String teaName = queryTea.getTeaname();
    newTea.setTeaid(teaId);
    newTea.setTeaname(teaName);
    newTea.getStudents().add(stu);
    teaList.add(newTea);
   }
  }
  map.put("students", (List<T>) stuList);
  map.put("teachers", (List<T>) teaList);
  return map;
 }

分享到:
评论

相关推荐

    Hibernate(一对多and多对一)范例

    本范例主要探讨了Hibernate中的两种关联关系:一对多(One-to-Many)和多对一(Many-to-One)。这两种关联关系是数据库设计中常见的实体关系映射,理解并熟练掌握它们对于开发复杂的数据库驱动应用至关重要。 一对...

    Hibernate 范例.rar

    【标题】:“Hibernate 范例.rar”是一个包含关于Hibernate框架实际应用的示例项目,主要展示如何使用Hibernate进行数据库查询。 【描述】:Hibernate是一个强大的对象关系映射(ORM)框架,它允许开发者在Java应用...

    hibernate hql各类查询范例

    - **ORDER BY** 用于对查询结果进行排序。 ### 2. 使用 HQL 进行参数化查询 第二个示例展示了如何使用 HQL 进行参数化查询。方法名为 `getDutyManOfGroup`,其中 HQL 语句如下: ```java "from syidt.modules.grp....

    Struts2+Hibernate+Spring整合开发深入剖析与范例应用03

    Spring还包含了数据访问抽象,如JDBC模板和DAO支持,以及对Hibernate的集成,方便在Spring环境中使用Hibernate。此外,Spring MVC是Spring提供的一个Web MVC框架,可以与Struts2协同工作,提供另一种实现MVC设计模式...

    Hibernate实例 oracel数据库

    在Hibernate项目中,我们可以使用JUnit测试数据的插入、更新、查询和删除操作,确保数据库操作的正确性。 8. **自定义测试类**: 自定义测试类通常是为了模拟特定场景或功能的测试,可能包含更复杂的数据状态设置和...

    Struts2+Hibernate+Spring整合开发深入剖析与范例应用05

    2. UserService通过Spring的JdbcTemplate或Hibernate的SessionFactory执行SQL查询或持久化操作。 3. 数据库操作完成后,UserService返回结果给Action。 4. Action根据业务逻辑处理结果,然后通过Struts2的Result类型...

    Struts2+Hibernate+Spring整合开发深入剖析与范例应用04

    它支持多种数据库,提供了丰富的API和HQL(Hibernate Query Language)查询语言。 Spring框架则是企业级应用中的全能框架,提供IOC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切...

    hibernate二级缓存使用范例

    总之,Hibernate的缓存机制包括一级缓存、二级缓存和查询缓存,它们通过减少对数据库的访问次数来提高系统性能。正确地配置和使用缓存,可以显著提升应用的响应速度,特别是对于读操作密集型的应用来说,效果尤为...

    Struts2+Hibernate+Spring整合开发深入剖析与范例应用02

    这个"Struts2+Hibernate+Spring整合开发深入剖析与范例应用02"的学习资源,很可能是关于这三大框架集成使用的详细教程或案例集。02这个文件名可能代表系列的第二部分,意味着它可能在前一部分的基础上进一步深入讲解...

    Struts2+Hibernate+Spring整合开发深入剖析与范例应用06

    在"Struts2+Hibernate+Spring整合开发深入剖析与范例应用06"中,我们可能涉及以下几个关键知识点: 1. **Struts2框架**:Struts2是一个强大的MVC框架,用于构建动态Web应用。它的核心是Action类,它处理HTTP请求并...

    struts2-hibernate登陆范例

    本范例将带你逐步了解如何构建一个基于 Struts2 和 Hibernate 的登录系统,让你更好地掌握这两个流行框架的结合使用。 首先,我们需要的开发环境包括 MyEclipse 6.0、Tomcat 5.5、JDK 1.5 以及 MySQL 5.0。为了实现...

    SpringMVC+Freemarker+Hibernate整合范例

    在SpringMVC中,可以利用Spring的数据访问/集成模块来管理Hibernate Session,实现事务控制和DAO(数据访问对象)层的解耦。 4. **整合流程**:在SpringMVC+Freemarker+Hibernate整合中,通常会首先配置Spring的...

    hibernate中的集合映射范例程序

    首先,集合映射是Hibernate中处理一对多、多对多关系的核心机制。它允许我们将一个实体对象与多个相关对象关联起来,这些相关对象可以存储在一个集合中。在Java中,常见的集合类型有List、Set、Map等,它们在...

    ExtJS+Hibernate的小范例

    标题 "ExtJS+Hibernate的小范例" 暗示了这个压缩包可能包含一个使用ExtJS前端框架与Hibernate后端持久层框架结合的简单示例项目。ExtJS是一款流行的JavaScript库,用于构建富客户端的Web应用程序,而Hibernate是Java...

    struts hibernate spring 集成范例

    **Spring** 是一个全面的企业级应用开发框架,它涵盖了依赖注入(Dependency Injection)、面向切面编程(AOP)、数据访问、事务管理等多个方面。Spring的核心是IoC(Inversion of Control)容器,它负责管理和装配...

    Struts hibernate spring集成范例(可部署运行)

    Hibernate通过配置文件(hibernate.cfg.xml)管理数据库连接,提供Session API进行数据持久化操作,如增删改查,并支持缓存和事务管理。 **Spring** 框架是Java企业级应用的核心,提供依赖注入(DI)和面向切面编程...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

     17.1.7 对查询结果排序  17.1.8 分页查询  17.1.9 检索单个对象(uniqueResult()方法)  17.1.10 按主键逐个处理查询结果(iterate()方法)  17.1.11 可滚动的结果集  17.1.12 在HQL查询语句中绑定参数  ...

    Struts2+Hibernate+Spring三大框架集成范例

    在"Struts2+Hibernate+Spring三大框架集成范例"中,我们可以看到一个综合性的示例项目,这个项目包含了基本的登录、查询和数据操作功能,这些都是Web应用的核心部分。以下是这些框架集成的关键知识点: 1. **Struts...

    hibernate 简约范例

    在这个简约范例中,我们将探讨如何使用Hibernate进行基本的数据操作,包括增、删、查、改,并了解如何处理线程安全性问题。 ### 1. Hibernate基础 Hibernate通过映射Java类到数据库表,使得开发人员可以使用面向...

Global site tag (gtag.js) - Google Analytics