
hibernate
奋斗的小面包
每天进步一点点,N天之后你会发现你征服了一座大山!
展开
-
HQL
HQL简介HQL(Hibernate Query Language) 是面向对象的查询语言, 它和 SQL 查询语言有些相似. 在 Hibernate 提供的各种检索方式中, HQL 是使用最广的一种检索方式. 它有如下功能:在查询语句中设定各种查询条件(条件查询)支持投影查询, 即仅检索出对象的部分属性支持分页查询支持连接查询支持分组查询, 允许使用 HAVING 和 G原创 2017-05-28 23:13:45 · 569 阅读 · 0 评论 -
Hibernate关于一对多 多对一 多对多关联关系的设置
写这篇文章主要是介绍一下hibernate关于一对多 多对一 多对多关联关系的设置。看似三个问题解决起来实则是2个问题,因为多对一和一对多的处理是反向的。下面我们先从一对多入手,对于一对多我们从两个方面讲解:1)一对多单向关联关系2)一对多双向关联关系我们使用User和OrderItem来描述,一个user可以拥有多个订单,一个订单只能属于一个user在调试这段代码的时候闹原创 2017-05-28 00:15:46 · 1569 阅读 · 0 评论 -
hibernate对缓存操作的方法
hibernate对缓存操作的方法有以下三种:Flush(),Reflush(),clear();One by OneFlush(),作用:强制使数据表中的数据和缓存中的数据保持一致(注意我说的是什么),Flush()方法会发送一条sql但不会提交事物原创 2016-10-30 11:12:07 · 698 阅读 · 0 评论 -
Hibernate持久化对象的状态及session的基本应用
站在持久化对象的角度,Hibernate吧对象分为4种状态:1:持久化状态,2:游离状态,3:临时状态,4:删除状态。值得提醒的是Session的特定方法能使对象从一个状态转到另一种状态。好,我们分别对这四种状态进行简略的解释。1:持久化状态:OID不为空,该对象在Session缓存中,持久化对象和数据库中的相关记录想对应。注意:在同一个Session缓存中,数据库表中的记录只对应一个持久化对原创 2016-10-31 14:52:04 · 450 阅读 · 0 评论 -
Hibernate使用c3p0连接池
我们要想使用c3p0连接池只需要做两步1)到如jar包2)在hibernate.cfg.xml配置文件中进行配置那么我们要导入的jar包在哪呢?路径如下图:将该文件夹下的所有jar包导入即可。第二步配置c3p0连接池我们可以在该文件夹下面找到hibernate.properties文件,在搜索c3p0即可找到关于c3p0的所有配置选项1)hibern原创 2017-05-26 22:02:35 · 1212 阅读 · 0 评论 -
hibernate主键
首先我们说一下主键类型:(1)自然主键(2)代理主键自然主键一般很少使用,应为满足主键的要求的列太少了,我们一般使用代理主键。下面我们来看一下hibernate的主键生成策略。主键生成策略generater :就是每条记录在录入时,主键的生成规则。主键的生成策略有7种,分别一一介绍:(1)indentity:主键自增,由数据库来维护,录入时不需要指定主键。(2)incr原创 2017-05-24 15:01:14 · 402 阅读 · 0 评论 -
Hibernate实体类创建注意事项
1: 持久化类必须有无参的构造函数,因为反射的原因。2:要有set/get方法3: 使用包装类型,解决数据库中值为null的问题4:持久化类需要提供id与数据库中的主键相对应5:不要用finall修饰class(hibernate是使用cglib代理生成的代理对象)原创 2017-05-24 10:32:15 · 1024 阅读 · 0 评论 -
hibernate的环境搭建及简单的增删改查
首先我们需要导入hibernate的jar包,在lib文件夹下有一个必须的文件夹导入里面的jar包即可第二步创建ORM映射文件放在bean包下,和要映射的bean在一起,然后我们导入约束,我们不用死记硬背,我们可以在该包下找到hibernate-mapping-3.0.dtd文件打开并复制其内容然后打开window--Preferences--搜索cata 设置原创 2017-05-23 00:31:28 · 333 阅读 · 0 评论 -
java时间与日期类型的Hibernate映射
在java中,代表时间和日期的类型包括:java.util.Date和java.util.Calendar.此外在jdbcAPI中还提供了3个扩展java.util.Date类的自类:java.sql.Date,java.sql.Time,java.sql.TimeStamp原创 2016-11-05 10:16:16 · 259 阅读 · 0 评论 -
Hibernate查询优化
查询优化我们从两个方面来说:1)类级别查询策略2)关联级别查询策略one by one类级别查询策略类级别查询策略就一点,就是使用延迟加载,什么是延迟加载呢?通俗的讲就是在你不使用时不加载,使用时根据关联的session加载数据。延迟加载的实现原理:很简单就是使用动态代理。所以只要我们调用方法查询到的对象时代理对象的时候,请注意,我们使用的时延迟加载策略。我们来原创 2017-05-30 14:16:54 · 389 阅读 · 0 评论