`
marschen
  • 浏览: 78957 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

hibernate中一对一优化

阅读更多

优化前的代码:

    public List findExamGuideByStaff_bak(int belong_exam_id, int belong_table_id) {
        String hql="from ExamGuide e where e.belong_exam_id=? and e.belong_table_id=? order by e.guide_no";
        List data=null;
        Session session=super.getHibernateSession();
            Query query=session.createQuery(hql);
            query.setInteger(0, belong_exam_id);
            query.setInteger(1, belong_table_id);
            data=query.list();

       
        if(data!=null&&data.size()!=0){
            return data;
        }
        return null;
    }

 

以下是优化后的代码:其中ExamGuide和ExamGuideExt是一对一关系,ExamGuide有个属性examGuideExt指向ExamGuideExt对象

 

    /**
     * 根据员工配置belong_exam_id,belong_table_id查出该员工的的ExamGuide数据和ExamGuideExt数据
     * 查找指标
     * @return
     */
    public List findExamGuideByStaff(int belong_exam_id, int belong_table_id) {
        String hql="select e,e.examGuideExt  from ExamGuide e where e.belong_exam_id=? and e.belong_table_id=? order by e.guide_no";
        List data=new ArrayList();
        Session session=super.getHibernateSession();
            Query query=session.createQuery(hql);
            query.setInteger(0, belong_exam_id);
            query.setInteger(1, belong_table_id);
            List tmpList=query.list();
            for(int i=0;i<tmpList.size();i++)
            {
                Object[] objs=(Object[])tmpList.get(i);
                ExamGuide eg=(ExamGuide)objs[0];
                eg.setExamGuideExt((ExamGuideExt)objs[1]);
                data.add(eg);
            }
       
        if(data!=null&&data.size()!=0){
            return data;
        }
        return null;
    }
   

分享到:
评论

相关推荐

    hibernate优化配置一级二级缓存

    一对一映射 hibernate优化配置一级二级缓存步骤 有图有真相

    Hibernate学习笔记和资料

    hibernate中一对一,一对多,多对多关系的配置,延迟加载,cascade,inverse hibernate查询方式概述,HQL查询,QBC查询,分页,结果集封装方式 ,高级查询 查询的优化,一级缓存,二级缓存,批量查询,注解方式

    Hibernate学习笔记

    009 一对一 主键关联映射_单向 010 一对一 主键关联映射_双向 011 一对一 唯一外键关联映射_单向 012 一对一 唯一外键关联映射_双向 013 session_flush 014 一对多关联映射 单向 015 一对多关联映射 双向 016 多对多...

    传智播客李勇hibernate源码1-20课

    传智播客李勇hibernate源码1-20课,目录如下:01_hibernate介绍与动手入门体验;02_hibernate入门案例的细节分析; 03_hibernate入门案例的代码优化; 04_Session接口及get|... 20_一对一外键关联关系的映射与原理分析

    让hibernate输出sql语句参数配置.doc

    hibernate.max_fetch_depth 参数用于设置单向关联(一对一,多对一)的外连接抓取(outer join fetch)树的最大深度。其取值为 0 到 3 之间,建议取值为 1 或 2。 8. hibernate.default_batch_fetch_size ...

    Hibernate实战(第2版 中文高清版)

     7.1.2 一对一的外键关联   7.1.3 用联结表映射   7.2 多值的实体关联   7.2.1 一对多关联   7.2.2 多对多关联   7.2.3 把列添加到联结表   7.2.4 映射map   7.3 多态关联   7.3.1 多态的多对一...

    Hibernate实战第二版

    针对Hibernate 4,感谢无私的奉献者,不要积分。 《图灵程序设计丛书·Hibernate实战(第2版)》是毋庸置疑的Hibernate和ORM(对象/...书中处处闪烁着作者超凡的真知灼见,将大大升华读者对ORM乃至企业级应用开发的理解。

    Hibernate实战

    《Hibernate实战》(第2版)是毋庸置疑的Hibernate和ORM(对象/关系映射)权威著作,详细讲述了Hibernate3.2、JavaPersistence和EJB...书中处处闪烁着作者超凡的真知灼见,将大大升华读者对ORM乃至企业级应用开发的理解。

    Hibernate实战.pdf 第2版 中文完整版

    《Hibernate实战》(第2版)是毋庸置疑的Hibernate和ORM(对象/关系映射)权威著作,详细讲述了Hibernate3.2、JavaPersistence和EJB...书中处处闪烁着作者超凡的真知灼见,将大大升华读者对ORM乃至企业级应用开发的理解。

    hibernate.cfg.xml中配置信息详解

    Hibernate.cfg.xml 是 Hibernate 框架中的一份核心配置文件,用于配置 Hibernate 的行为和性能。该文件中包含了多个配置属性,用于控制 Hibernate 的各种功能和特性。本文将对 Hibernate.cfg.xml 中的配置信息进行...

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

     16.4 多对一和一对一关联的检索策略  16.4.1 迫切左外连接检索(fetch属性为“join”)  16.4.2 延迟检索(lazy属性为默认值“proxy”)  16.4.3 无代理延迟检索(lazy属性为“no-proxy”)  16.4.4 立即检索...

    Hibernate_Annotation关联映射

    一对一关联可能是双向的,在双向关联中,有且仅有一端作为主体(owner)端存在:主体端负责维护联接列(即更新),对于不需要维护这种关系的从表则通过mappedNy属性进行声明。mappedBy的值指向主体的关联属性。例子...

    Hibernate实战(第二版-人民邮电出版社)

    书中通过一个应用将数百个例子融合起来,不仅深入剖析了Hibernate 3.2和Java Persistence丰富的编程模型,还深刻阐述了数据库设计、对象/关系映射(ORM)和优化等方面的基本原则、策略和最佳实践。书中处处闪烁着...

    hibernate_reference中文文档.pdf

    1.1. 第一部分 - 第一个 Hibernate 应用程序 ................................. 1 1.1.1. 设置 ............................................................ 1 1.1.2. 第一个 class .............................

    hibernate完整学习

    Hibernate的本质 也是处理对象和关系模型之间的转换,只是对...一个项目中,如果对sql语句的优化要求比较高,不适合用hibernate 3.如果一张表中有上亿级别的数据量,也不适合用hibernate(数据库读写分离,分库分表)

    理财管理软件CS版(JAVA+Hibernate+MySql)

    兄弟同盟管理信息系统使用说明书 1.1、 系统概述: 此系统是一款兄弟之间消费管理的一个平台,所谓亲兄弟明算账,有了这个系统不仅可以看到兄弟之间消费信息...(15)选择“系统优化”,进行对系统闲置的资源进行回收。

Global site tag (gtag.js) - Google Analytics