hibernate
茜茜770
不积跬步,无以至千里;不积小流,无以成江海。
展开
-
Hibernate使用NativeSQL查询类型为char的columns
小妹花了一天的时间,终于研究出点结果,很是高兴啊,但是还有很多问题!现在来交代一下事情经过:领导要求通过left join 查询实现一个功能——在代码表(dm_ship)里有哪些行,被业务表(t_plan)引用过了,但是要显示所有的(dm_ship)数据,被引用过的数据给做一个标记。第一次遇到问题(使用HQL时候我发现不能使用left join语法):因为HQL的left jo原创 2011-09-21 13:45:55 · 1746 阅读 · 0 评论 -
Hibernate——脏检查和缓存清理机制
脏检查Session到底是如何进行脏检查的呢?当一个Customer对象被加入到Session缓存中时,Session会为Customer对象的值类型的属性复制一份快照。当Session清理缓存时,会先进行脏检查,即比较Customer对象的当前属性与它的快照,来判断Customer对象的属性是否发生了变化,如果发生了变化,就称这个对象是“脏对象”,Session会根据脏对象的最新属性来执转载 2012-12-27 09:21:10 · 1259 阅读 · 0 评论 -
C3P0 配置属性详解
3 30 1000 false Test false 100 null false 60 3 60 15 100 3 root password转载 2013-03-27 13:49:46 · 1596 阅读 · 0 评论 -
Spring中使用getSession()与通过HibernateTemplate进行数据操作的差别
在 Spring+Hibernate的集成环境里,如果DAO直接使用HibernateDaoSupport的getSession()方法获取 session进行数据操作而没有显式地关闭该session,那么程序表现为:每个session会打开一个connection,并且 connection会一直保持(因为没有显式地close).如果程序使用了c3p0连接池,则因为c3p0连接池默认最大连接数是转载 2013-07-16 15:38:23 · 981 阅读 · 0 评论 -
Hibernate中的cascade和inverse
这两个属性都用于一多对或者多对多的关系中。而inverse特别是用于双向关系,在单向关系中我们并不需要。 Cascade代表是否执行级联操作,Inverse代表是否由己方维护关系。 Cascade: Cascade属性的可能值有 all: 所有情况下均进行关联操作,即save-update和delete。 none: 所有情况转载 2013-10-17 17:09:32 · 654 阅读 · 0 评论 -
Hibernate中的unsaved-value
当你显式的使用session.save()或者session.update()操作一个对象的时候,实际上是用不到unsaved-value的。某些情况下(父子表关联保存),当你在程序中并没有显式的使用save或者update一个持久对象,那么Hibernate需要判断被操作的对象究竟是一个已经持久化过的持久对象,是一个尚未被持久化过的内存临时对象。例如: Java代码转载 2013-10-17 17:12:45 · 724 阅读 · 0 评论 -
hibernateTemplate和hibernateDaoSupport的注意问题!
1. 虽然继承了HibernateDaoSupport这个类,但是this.getSession(),获得的session也要在使用后即使关闭,因为这 个session是原生的session不是经过sping代理过的,并且还没有事物管理,自动提交,自动关闭连接等功能,所以使用使用 getSession()获得session时一定要关闭。2.使用 getHibernateTemplate()原创 2014-01-28 10:11:29 · 952 阅读 · 0 评论 -
Hibernate - DetachedCriteria 的完整用法(带例子)
最近在项目中使用 Spring 和 Hibernate 进行开发,有感于 Criteria 比较好用,在查询方法设计上可以灵活的根据 Criteria 的特点来方便地进行查询条件的组装。现在对 Hibernate的Criteria 的用法进行总结: Hibernate 设计了 CriteriaSpecification 作为 Criteria 的父接口,下面提供了 Criteria和Detache转载 2014-11-06 16:10:40 · 3407 阅读 · 0 评论 -
Hibernate get和load区别
get和load方式是根据id取得一个记录下边详细说一下get和load的不同,因为有些时候为了对比也会把find加进来。 1.从返回结果上对比:load方式检索不到的话会抛出org.hibernate.ObjectNotFoundException异常get方法检索不到的话会返回null 2.从检索执行机制上对比: get方法和find方法都是直接从数据库中检索 而l转载 2014-11-06 13:10:14 · 614 阅读 · 0 评论