
Hibernate
文章平均质量分 80
徐刘根
微信关注公众号:Java后端技术(ID:JavaITWork),和20万人一起学习Java!
"Java后端技术"微信公众号专注Java相关技术:SSM、Spring全家桶、微服务、MySQL、MyCat、集群、分布式、中间件、Linux、网络、多线程,偶尔讲点运维Jenkins、Nexus、Docker、ELK,偶尔分享些技术干货,致力于Java全栈开发!
展开
-
Hibernate中Session.get()方法和load()方法的详细比较
1、get()方法直接返回实体类,如果查不到数据则返回null。load()会返回一个实体代理对象(当前这个对象可以自动转化为实体对象),但当代理对象被调用时,如果没有数据不存在,就会抛出个org.hibernate.ObjectNotFoundException异常2.load先到缓存(session缓存/二级缓存)中去查,如果没有则返回一个代理对象(不马上到DB中去原创 2014-10-04 15:56:58 · 7638 阅读 · 1 评论 -
Myeclipse使用hibernate的逆向工程
(1)使用myeclipse自带的hibernaterjar(2)创建数据库(3)在数据库表上点击右键(4)具体过程如下:在有的时候我们,按照步骤按时没有产生主外键的对应关系,比如:one-to-many等可以参考:http://blog.csdn.net/xlgen157387/article/details/4原创 2014-12-05 17:34:50 · 1842 阅读 · 0 评论 -
Hibernate懒加载策略
所谓懒加载(lazy)就是延时加载,就是当在真正需要数据的时候,才真正执行数据加载操作至于为什么要用懒加载呢,就是当我们要访问的数据量过大时,明显用缓存不太合适,因为内存容量有限 ,为了减少并发量,减少系统资源的消耗,我们让数据在需要的时候才进行加载,这时我们就用到了懒加载。在通过JDBC操作数据时,我们只能通过SQL语句来加载我们所需要的数据,但是到了Hibernate世界中(确原创 2014-12-01 14:29:20 · 3232 阅读 · 0 评论 -
Hibernate中使用HQLQuery查询全部数据和部分数据
package com.lc.view;import java.util.Iterator;import java.util.List;import org.hibernate.Session;import org.hibernate.Transaction;import com.lc.domain.Student;import com.lc.utils.HibernateUti原创 2014-10-05 17:48:11 · 8666 阅读 · 0 评论 -
根据错误原理解决Hibernate运行出现No CurrentSessionContext configured!错误
(1)异常信息如下:严重: Servlet.service() for servlet action threw exceptionjava.lang.RuntimeException: No CurrentSessionContext configured! at com.lc.utils.HibernateUtil.executeQuery(HibernateUtil.java:56)原创 2014-10-05 11:02:59 · 14534 阅读 · 7 评论 -
Hibernate用ThreadLocal模式 (线程局部变量模式) 管理Session
(1)使用ThreadLocal模式 (线程局部变量模式) 管理Session的代码如下原创 2014-10-04 16:50:56 · 3418 阅读 · 1 评论 -
Hibernate常见问题 No row with the given identifier exists问题的原因及解决
Hibernate中No row with the given identifier exists问题的原因及解决 产生此问题的原因: 有两张表,table1和table2.产生此问题的原因就是table1里做了关联或者(特殊的多对一映射,实际就是一对一)来关联table2.当hibernate查找的时候,table2里的数据没有与table1原创 2014-10-03 20:28:55 · 5735 阅读 · 1 评论 -
Hibernate核心类和接口详细介绍
一、hiobernate核心类和接口预览图二、hibernate.properties这个文件是以前老版本使用的 类似于hibernate.cfg.xml文件;作用和hibernate.cfg.xml一致.三、hibernate.cfg.xml ①该文件主要用于指定各个参数,是hibernate核心文件②默认放在src目录下,也可以放在别的目录下。③指定连接数据库的原创 2014-10-04 10:19:36 · 6682 阅读 · 6 评论 -
Hibernate的各种保存方式的区别 (save,persist,update,saveOrUpdte,merge,flush,lock)等
hibernate的保存 hibernate对于对象的保存提供了太多的方法,他们之间有很多不同,这里细说一下,以便区别: 一、预备知识: 在所有之前,说明一下,对于hibernate,它的对象有三种状态,transient、persistent、detached 下边是常见的翻译办法: transient:瞬态或者自由态 persistent:持久化状态 detache原创 2014-10-04 10:35:18 · 4416 阅读 · 1 评论 -
hibernate.cfg.xml文件的配置模板和不同数据库的配置参数
(1)hibernate.cfg.xml文件的配置模板<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuratio原创 2014-10-03 18:49:49 · 3315 阅读 · 2 评论 -
Hibernate一级缓存和二级缓存详解
一、一级缓存二级缓存的概念解释(1)一级缓存就是Session级别的缓存,一个Session做了一个查询操作,它会把这个操作的结果放在一级缓存中,如果短时间内这个session(一定要同一个session)又做了同一个操作,那么hibernate直接从一级缓存中拿,而不会再去连数据库,取数据。(2)二级缓存就是SessionFactory级别的缓存,顾名思义,就是查询的时候会把查询结果原创 2014-10-14 09:02:38 · 29096 阅读 · 3 评论 -
Hibernate实现many-to-many的映射关系
(1)一个最简单的例子就是学生选课的数据表了(2)Student.javapublic class Course { private Integer id; private String name; private Set stuCourses; //get/set方法}(3)Student.javapublic class Student { private原创 2014-10-10 21:25:02 · 2847 阅读 · 3 评论 -
剖析错误原理并解决Hibernate出现No TransactionManagerLookup specified!错误
(1)No TransactionManagerLookup specified!大致意思就是原创 2014-10-05 11:25:33 · 8081 阅读 · 0 评论 -
Hibernate和Ibatis的区别
一、Hibernate简介Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成原创 2015-03-20 11:08:58 · 5692 阅读 · 0 评论