`
kkkkrh
  • 浏览: 1239 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

hibernate映射多表到同一个对象后做分页的问题

阅读更多
现在我有12张表,分别是table01-table12,由于12张表的结构一样,同一映射到同一个对象TableBean,在hbm.xml中,写成如下格式:

<hibernate-mapping>
    <class name="com.javaeyes.bean.TableBean" table="table_01" entity-name="Table01"/>
    <class name="com.javaeyes.bean.TableBean" table="table_02" entity-name="Table02"/>
    <class name="com.javaeyes.bean.TableBean" table="table_03" entity-name="Table03"/>
    <class name="com.javaeyes.bean.TableBean" table="table_04" entity-name="Table04"/>
    <class name="com.javaeyes.bean.TableBean" table="table_05" entity-name="Table05"/>
..........
    <class name="com.javaeyes.bean.TableBean" table="table_11" entity-name="Table11"/>
    <class name="com.javaeyes.bean.TableBean" table="table_12" entity-name="Table12"/>

每个表使用不同的entity-name来区分,统一都映射到TableBean这个class,

现在我需要从这12张表中查询查出指定条件的数据集,我使用的是QBC查询,定义了分页函数public List findByCriteria(List<Criteria> cs, int rowStart, int rowEnd),传Criteria的list进去进行分页处理查询。

分页函数中,我使用的是TableBean的class,没有用entity-name来查询(网上多是用entity-name来查询,解决不了我的问题)

public List findByCriteria(List<Criteria> cs, int rowStart, int rowEnd)
{
    Criteria criteria = getSession().createCriteria(TableBean.getClass());

    ......//拼criteria,组成查询条件

    criteria.setFirstResult(rowStart);
    criteria.setMaxResults(rowEnd - rowStart + 1);

    list = criteria.list();

    return list;
}

现在程序执行时,总的数据集的大小可以取到,第一页也可以取到,但是第二页就取不到了,list返回为空,我debug进去看分页的数据都对,rowEnd,rowStart都是正确的数据,感觉是list = criteria.list();这个找不到分页的位置了,因为是多张表的数据进行分页,不是一张表的数据进行分页。


我该怎么做?
分享到:
评论
1 楼 kkkkrh 2009-01-11  
没人知道原因么?

相关推荐

    Hibernate 多表连接分页查询示范项目

    总结,"Hibernate 多表连接分页查询示范项目"是一个实用的示例,它展示了如何在实际应用中利用 Hibernate Criteria API 实现复杂查询和分页,对于学习和掌握 Hibernate 的高级特性和数据库操作技巧非常有帮助。...

    hibernate set 集合映射

    3. **关联映射**:集合映射通常涉及到两个实体之间的关联,如一对一(@OneToOne)、一对多(@OneToMany)、多对一(@ManyToOne)和多对多(@ManyToMany)关系。 4. **集合属性映射**:在实体类中,集合属性需要使用...

    Hibernate连表查询 Hibernate连表查询

    Hibernate 是一个开源的对象关系映射(ORM)框架,它允许开发人员将Java对象模型映射到数据库表,并在对象和数据库之间进行转换。在实际开发过程中,我们经常会遇到需要从多个表中获取数据的情况,这时就需要用到连...

    [原]Hibernate集合映射

    Hibernate作为Java领域中的一款强大持久化框架,其核心功能之一就是对象关系映射(ORM),使得开发者可以方便地在Java对象与数据库表之间进行交互。其中,集合映射是Hibernate中非常关键的概念,它允许我们将数据库...

    用Struts+Hibernate做的分页

    其次,Hibernate是一个对象关系映射(ORM)框架,它可以将Java对象和数据库表之间的映射关系进行管理,简化了数据库操作。在分页场景中,Hibernate主要负责从数据库中查询数据并进行分页处理。通过Criteria、HQL...

    hibernate分页Hibernate 分页的设计和编码

    Hibernate是Java环境下一个开放源代码的对象关系映射(ORM)框架,它允许开发者将Java对象映射到关系型数据库中的表,以及从数据库表中映射到Java对象。分页功能则是为了提高应用程序性能而设计的一种技术,尤其是在...

    Hibernate3.x关联映射示例

    例如,多个订单(Order)可以关联到同一个客户(Customer)。 4. **多对多(Many-to-Many)关联**:一个实体可以关联多个其他实体,反之亦然。在数据库中,这通常通过中间表(join table)来实现,中间表包含双方的...

    struts+hibernate做的分页显示

    在这个项目中,"struts+hibernate做的分页显示"主要是利用这两者来实现数据的分页展示,提升用户体验,降低服务器压力。 首先,Struts是一个基于MVC设计模式的Java Web框架,它简化了开发过程,提供了处理HTTP请求...

    用户Hibernate实现的一个分页

    在Java开发中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它简化了数据库操作,使得开发者可以使用面向对象的方式来处理数据。本教程将详细讲解如何使用Hibernate实现分页功能,这对于处理大量数据的Web...

    Hibernate继承映射的第一种策略:每个具体类一张表

    假设有一个抽象的`Animal`类,以及它的两个子类`Dog`和`Cat`,在Hibernate映射文件中可能会这样配置: ```xml ``` 这样,`Animal`类的`name`属性会被映射到`ANIMAL`表,`Dog`和`Cat`的...

    Spring+Hibernate完整分页

    在IT行业中,Spring和Hibernate是两个非常重要的框架,它们分别专注于应用的依赖注入(DI)和对象关系映射(ORM)。结合使用,它们可以构建出高效、可维护的Java Web应用程序。本文将深入探讨如何利用Spring和...

    STRUTS2+HIBERNATE详细的分页实现代码详细的分页实现代码

    Hibernate是一个面向Java环境的对象关系映射(ORM)框架,它提供了对数据库操作的高级抽象,使得开发者能够以面向对象的方式来操作数据库。通过Hibernate,开发者可以将实体对象与数据库表进行映射,从而极大地提高...

    hibernate 模糊查询 分页

    Hibernate是一个开源的JPA(Java Persistence API)实现,它允许开发者使用面向对象的方式来操作数据库,而无需编写大量的SQL代码。通过ORM映射,Java对象可以直接与数据库表进行对应,这大大提高了开发效率和代码的...

    spring+hibernate 分页 +mysql

    Hibernate是一个强大的ORM(Object-Relational Mapping)框架,它允许开发者将Java对象映射到关系数据库表,消除了Java与SQL之间的直接交互,降低了数据访问层的复杂性。在Spring框架中,我们可以利用Spring Data ...

    Struts+Hibernate实现分页

    而Hibernate则是一个强大的对象关系映射(ORM)工具,用于简化数据库操作,将Java对象与数据库表之间的交互变得更加简单。 在分页实现中,视图(View)部分通常负责显示数据和提供导航链接。在示例的`select.jsp`中...

    struts2.0 + hibernate + oracle 分页问题

    接下来,Hibernate作为ORM(对象关系映射)工具,连接了Java对象和数据库表。它允许开发者使用面向对象的方式操作数据库,简化了数据库操作。在分页查询中,Hibernate提供了Criteria、HQL(Hibernate Query Language...

    struts1+hibernate分页

    分页是将大量数据分成多个小部分,每次只加载一部分数据到用户界面,以减少内存占用和提高页面响应速度。在Web应用中,通常需要提供页码或跳转链接让用户在不同页之间切换。分页的核心参数包括当前页、每页显示的...

    hibernate通用分页

    在Java的Web开发中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它使得开发者可以使用面向对象的方式来操作数据库,极大地提高了开发效率。而当我们处理大量数据时,通常需要实现分页功能来提高用户体验,...

    struts hibernate spring 分页ssh分页

    **Hibernate** 是一个对象关系映射(ORM)框架,它简化了Java应用与数据库之间的交互。通过Hibernate,开发者可以将数据库操作转化为对Java对象的操作,避免了编写大量的SQL语句。此外,Hibernate还支持缓存机制,...

    基于hibernate_mysql分页通用源码

    1. Hibernate:Hibernate是一个优秀的对象关系映射(ORM)框架,它允许开发者在Java应用中使用面向对象的方式来操作数据库。它通过提供一个映射机制,将Java类与数据库表进行对应,简化了数据库操作,减少了SQL的...

Global site tag (gtag.js) - Google Analytics