hibernate
DN-CS BISHA
来自星星的我
展开
-
Hibernate有哪几种查询数据的方式
hql查询,sql查询,条件查询 @sunRainAmazinghql查询,sql查询,条件查询HQL: Hibernate Query Language. 面向对象的写法:Query query = session.createQuery("from Customer where name = ?");query.setParameter(0, "苍老师");Query.list()原创 2017-05-20 18:07:47 · 6765 阅读 · 0 评论 -
Hibernate的作用是什么
Hibernate的作用是什么 @ sunRainAmazing一、在ssh框架中hibernate的作用是什么呢?1、hibernate是一种ORM(对象映射)框架的持久性框架, 它是对JDBC做了轻量级的封装, 使得程序员可以面向对象思维的对数据库进行操作。 2、支持各种关系数据库,它的级联功能很好的支持着表与表之间的各种关系。 3、与spring整合之后连接数据库的代翻译 2017-05-21 13:30:39 · 11768 阅读 · 0 评论 -
hibernate的抓取策略 II
hibernate的抓取策略 @ sunRainAmazing抓取策略抓取策略(fetching strategy)是指: 当应用程序需要在(Hibernate实体对象图的)关联关系间进行导航的时候, Hibernate如何获取关联对象的策略。抓取策略可以在O/R映射的元数据中声明, 也可以在特定的HQL 或条件查询(Criteria Query)中重载声明。 通过配置抓取策翻译 2017-05-21 13:26:53 · 238 阅读 · 0 评论 -
hibernate的缓存机制 I
hibernate的缓存机制 @sunRainAmazing1. 内部缓存存在Hibernate中又叫一级缓存,属于应用事物级缓存2. 二级缓存: a) 应用及缓存 b) 分布式缓存 条件:数据不会被第三方修改、数据大小在可接受范围、 数据更新频率低、同一数据被系统频繁使用、非关键数据 c) 第三方缓存的实现什么是缓存缓存将数翻译 2017-05-21 10:34:38 · 282 阅读 · 0 评论 -
hibernate缓存机制 II
hibernate缓存机制 @sunRainAmazing一、why(为什么要用Hibernate缓存?)Hibernate是一个持久层框架,经常访问物理数据库。 为了降低应用程序对物理数据源访问的频次, 从而提高应用程序的运行性能。 缓存内的数据是对物理数据源中的数据的复制, 应用程序在运行时从缓存读写数据, 在特定的时刻或事件会同步缓存和物理数据源的数据。二、wh翻译 2017-05-21 13:20:31 · 204 阅读 · 0 评论 -
如何优化Hibernate?
如何优化Hibernate @sunRainAmazing1.使用双向一对多关联,不使用单向一对多2.灵活使用单向一对多关联3.不用一对一,用多对一取代4.配置对象缓存,不使用集合缓存5.一对多集合使用Bag,多对多集合使用Set6. 继承类使用显式多态7. 表字段要少,表关联不要怕多,有二级缓存撑腰翻译 2017-05-21 13:16:13 · 320 阅读 · 0 评论 -
Hibernate是如何延迟加载?get与load的区别
Hibernate是如何延迟加载? get与load的区别 @ sunRainAmazing1、 对于Hibernate get方法,Hibernate会确认一下该id对应的数据是否存在,2、 首先在session缓存中查找,然后在二级缓存中查找,3、 还没有就查询数据库,数据库中没有就返回null。 4、 这个相对比较简单,也没有太大的争议。 5、 主要要说明的一点就是在这个版本(h翻译 2017-05-21 13:14:01 · 444 阅读 · 0 评论 -
hibernate的抓取策略
hibernate的抓取策略 @sunRainAmazing抓取策略Hibernate抓取策略是指当应用程序需要在关联关系间进行导航的时候, Hibernate如何获取关联对象的策略。 Hibernate有如下几种抓取策略: 1、链接抓取(Join fetching): Hibernate 通过在select语句中使用out join 来获翻译 2017-05-21 10:30:59 · 271 阅读 · 0 评论 -
hibernate的事务 I
hibernate的事务 @sunRainAmazing事务Spring的事务和Hibernate的事务有什么区别?hibernate的事务通过显示的添加代码完成,Spring是通过动态代理切入运行时添加代码管理完成的, 所谓AOP,如果Spring配置的是Hibernate事务管理, 动态切入的代码应该是和手写hibernate事务管理基本一致的所以,无论用何种事务方式, 只要保翻译 2017-05-21 10:26:59 · 346 阅读 · 0 评论 -
hibernate的二级缓存 I
hibernate的二级缓存 @sunRainAmazing二级缓存什么样的数据适合存放到第二级缓存中? 1、很少被修改的数据 2、不是很重要的数据,允许出现偶尔并发的数据 3、不会被并发访问的数据 4、参考数据 不适合存放到第二级缓存的数据? 1、经常被修改的数据 2、财务数据,绝对不允许出现并发 3、与其他应用共享的数据。Hibernate的二级缓存Hibe翻译 2017-05-21 10:21:45 · 235 阅读 · 0 评论 -
hibernate 一级缓存 I
hibernate 一级缓存 @sunRainAmazing在同一个Session里面,第一次调用get()方法, Hibernate先检索缓存中是否有该查找对象,发现没有, Hibernate发送SELECT语句到数据库中取出相应的对象, 然后将该对象放入缓存中,以便下次使用, 第二次调用get()方法,Hibernate先检索缓存中是否有该查找对象,翻译 2017-05-21 10:17:38 · 209 阅读 · 0 评论 -
Hibernate工作原理
Hibernate工作原理 @sunRainAmazing原理: 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3.打开Session 4.创建事务Transation 5.持久化操作 6.提交事务 7.关闭Session 8.关闭SesstionFactory 为什么要用1. 对JDBC访问数据库的代码做了封装原创 2017-05-20 18:05:30 · 670 阅读 · 0 评论 -
hibernate入门
什么是hibernateHibernate是轻量级JavaEE应用的持久层解决方案,是一个关系数据库ORM框架。是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合;Hibernate就是一个持久层的ORM的框架.常见的持久层框架Hibernate :JPA原创 2017-05-20 18:01:18 · 495 阅读 · 0 评论 -
hibernate中的persist() 和 save() 区别
persist() 和 save() 区别 @sunRainAmazingSession 的 save() 方法使一个临时对象转变为持久化对象Session 的 save() 方法完成以下操作:把 News 对象加入到 Session 缓存中, 使它进入持久化状态。选用映射文件指定的标识符生成器, 为持久化对象分配唯一的 OID. 在 使用代理主键的情况下, setId() 方法为 News原创 2017-05-20 18:22:59 · 2081 阅读 · 0 评论 -
Hibernate中的update()和saveOrUpdate()的区别.
update()和saveOrUpdate()的区别 @sunRainAmazingsaveOrUpdate()做下面的事: 如果对象已经在本session中持久化了,不做任何事 ;如果另一个与本session关联的对象拥有相同的持久化标识(identifier),抛出一个异常;如果对象没有持久化标识(identifier)属性,对其调用save()。 如果对象的持久标识(identif原创 2017-05-20 18:16:36 · 832 阅读 · 0 评论 -
hibernate的load()和get()的区别
load()和get()的区别 @sunRainAmazinghibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,load默认支持延迟加载,在用到对象中的其他属性数 据时才查询数据库,但是万一数据库中不存在该记录,只能抛异常ObjectNotFoundEcception;所说的load方法抛异常是指在使用该对 象的数据时,数据库中不存在该数原创 2017-05-20 18:14:31 · 320 阅读 · 0 评论 -
hibernate的优缺点
hibernate的优缺点 @sunRainAmazing优缺点Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibern翻译 2017-05-21 10:12:46 · 2022 阅读 · 0 评论