hibernate
jumethh
这个作者很懒,什么都没留下…
展开
-
Hibernate的clear(),flush(),evict()方法详解
1.Clear 方法 无论是Load 还是 Get 都会首先查找缓存(一级缓存) 如果没有,才会去数据库查找,调用Clear() 方法,可以强制清除Session缓存。例:[c-sharp] view plaincopyprint?public void testClear(){ Session转载 2013-08-02 10:13:01 · 584 阅读 · 0 评论 -
Serializable 和 Externalizable
1、序列化是干什么的? 简单说就是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来。虽然你可以用你自己的各种各样的方法来保存object states,但是Java给你提供一种应该比你自己好的保存对象状态的机制,那就是序列化。2、什么情况下需要序列化 a)当你想把的内存中的对象状态保存到一个文件中或者数据库中时候转载 2013-08-02 18:11:24 · 754 阅读 · 0 评论 -
Hibernate的merge()方法
下面来讲讲Hibernate的merge方法。我打算按照hibernate对象生命周期的三个状态来讲。1:如果POJO对象处于游离态,我所说的游离态是指该对象的id值为空。hibernate判断一个对象在数据库中是否存在不是看对象的其他信息,而是判断该id在数据库中是不是存在。如果id为空,那自然是不存在,所以当我们调用merge方法的时候,就会直接执行插入操作。这一点有点像saveoru转载 2013-08-02 10:18:03 · 1220 阅读 · 0 评论 -
hibernate-criteria的or()用法
Restrictions.or --> or 关系criteria.or(Criterion lhs,Criterion rhs) 注意lhs为条件的左半部分,rhs为条件的右半部分,两者之间是or的关系例如criteria.or(criteria, Restrictions.or(Restrictions.like("name", key,MatchMode.ANYWHERE原创 2013-08-21 15:06:51 · 2698 阅读 · 0 评论 -
HQL 连接查询
1. 当取出user时想把级联的role也取出用:from User u inner join fetch u.roles 2. 此时可能会出现user重复,需加上group by:from User u inner join fetch u.roles group by u.userId3. 如果需要role过滤,需要给role加别名from User u inne原创 2013-09-17 14:03:29 · 1246 阅读 · 0 评论