![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hibernate
dengyll
这个作者很懒,什么都没留下…
展开
-
Hibernate映射解析——七种映射关系
首先我们了解一个名词ORM,全称是(Object Relational Mapping),即对象关系映射。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现,这样开发人员就可以把对数据库的操作转化为对这些对象的操作。Hibernate正是实现了这种思想,达到了方便开发人员以面向对象的思想来实现对数据库的操作。Hibernate在实现ORM功能的时候主要用到的文件有:映射类...2012-07-19 13:10:08 · 158 阅读 · 0 评论 -
一点点学习Hibernate3.6 -二级缓存
Hibernate中提供了两个级别的缓存:一级缓存是session的缓存,它属于session的生命周期,session关闭后缓存也将清除.这就说明用session来提升性能的能力有限,而二级缓存是sessionFactory级别的,可以做更多的事情,但是默认是不开启的,我们想要使用,就必须先开启.在主配置文件中添加以下代码来开启二级缓存:<property name=...原创 2012-04-22 15:28:00 · 100 阅读 · 0 评论 -
Hibernate 中get, load 区别
1. 对于get方法,hibernate会确认一下该id对应的数据是否存在,首先在session缓存中查找,然后在二级缓存中查找,还没有就查询数据库,数据库中没有就返回null。这个相对比较简单,也没有太大的争议。主要要说明的一点就是在这个版本中get方法也会查找二级缓存! 2. load方法加载实体对象的时候,根据映射文件上类级别的lazy属性的配置(默认为true),分情况讨论...原创 2012-04-22 15:29:44 · 65 阅读 · 0 评论 -
一点点学习Hibernate3.6
框架的诞生必然是为了解决某一问题,要对Hibernate的身世有所了解,知道它的优点、作用,能够干什么,不能够干什么,这然才算是掌握了Hibernate.典型的B/S三层架构,这个都不陌生:为什么要把Dao单独作为一个层?这样设计肯定是有原因的.底层数据库的实现不同,Dao的实现也不尽相同,可能一个Dao接口下有很多个实现,比如MysqlDaoImpl或者OracleDaoImp...原创 2012-04-19 22:59:23 · 81 阅读 · 0 评论 -
一点点学习Hibernate3.6 -对象的状态
hibernate的设计者为了更好的维护对象,以便生成恰当的SQL语句,引入了对象的状态这个概念.hibernate文档里面描述hibernate的状态分为三种:瞬时(Transient),又称临时状态持久(Persistent)脱管(Detached)又称游离状态其实我也觉得如果按照Hibernate的关于对象的状态定义,状态应该分为四种才对:多了一个删除状...2012-04-19 23:00:17 · 74 阅读 · 0 评论 -
一点点学习Hibernate3.6 -事务管理
Hibernate的事务(Transaction)使用的很简单,和Spring整合后也就用不着了,简单的记下几个方法.//取得sessionSession session = sessionFactory.openSession();//打开事务Transaction tx = session.beginTransaction();//取...2012-04-19 23:01:16 · 86 阅读 · 0 评论 -
一点点学习Hibernate3.6 -关联关系映射
关系总体分为三种:一对多,多对多,一对一.在配置映射文件时, 需要选择与保存对象相应的集合标签.在一对多的关系中,往往只需要一方维护两者的关系,因为在关系型数据库中,只需要有一方存储关系就行了,称为外键,外键列保存在多的一方即可,对于对象来说,双方都设置关联才比较好,这样双方才都知道与对方关联,但是对于数据库来说,只需要一方设置有关联就可以了,不管哪一方,只进行设置,默认就会生成一条up...原创 2012-04-19 23:02:05 · 150 阅读 · 0 评论 -
一点点学习Hibernate3.6 -Criteria(面向对象的查询)
// 1,简单查询(查询所有的Employee)// Criteria criteria = session.createCriteria(Employee.class);// criteria.add(Restrictions.gt("id", 5)); // id大于5// criteria.add(Restrictions.le("id", 10)); // id小...原创 2012-04-19 23:02:39 · 103 阅读 · 0 评论