
hibernate
用户昵称已存在~
活泼开朗幽默
展开
-
Hibernate原理与应用
Userpackagecom.hbsi.domain; importjava.util.Date; public class User { private int id; private String name; private Date birthday; public int getId() { return id;原创 2011-12-05 19:26:14 · 294 阅读 · 0 评论 -
关系模型和对象模型的究竟匹配还是不匹配?
引用第一范式: 1、内容相似的数据列必须消除(消除的办法就是再创建一个数据表来存放他们,建立关联关系) 2、必须为每一组相关数据分别创建一个表 3、每条数据记录必须用一个主键来标示 第二范式: 1、只要数据列里面的内容出现重复,就意味着应该把表拆分为多个表 2、拆分形成的表必须用外键关联起来。 第三范式: 1、与主键没有直接关系的数据列必须消除(消除的办原创 2011-12-05 19:31:16 · 766 阅读 · 0 评论 -
HQL
HQL(Hibernate Query Language) 面向对象的查询语言,与SQL不同,HQL中的对象名是区分大小写的(除了JAVA类和属性其他部分不区分大小写);HQL中查的是对象而不是和表,并且支持多态;HQL主要通过Query来操作,Query的创建方式: Queryq = session.createQuery(hql);from Person原创 2011-12-07 18:55:58 · 369 阅读 · 0 评论 -
映射
一、Set集合映射当实体类中有HashSet属性时,它是如何进行初始化的呢?当持久化这个实体类的一个实例,比如调用persist()方法进行了持久化时,hibernate将自动利用hibernate自己实现了Set接口的类替换掉HashSet。所以一定要防止出现如下所示的错误:Java代码 HashSet hSet = (HashSet)depart.getEmps(); //原创 2011-12-12 19:23:11 · 665 阅读 · 0 评论 -
hibernate懒加载
所谓懒加载(lazy)就是延时加载,延迟加载。什么时候用懒加载呢,我只能回答要用懒加载的时候就用懒加载。至于为什么要用懒加载呢,就是当我们要访问的数据量过大时,明显用缓存不太合适,因为内存容量有限 ,为了减少并发量,减少系统资源的消耗,我们让数据在需要的时候才进行加载,这时我们就用到了懒加载。比如部门ENTITY和员工ENTITY,部门与员工1对多,如果lazy设置为false原创 2011-12-14 20:24:47 · 456 阅读 · 0 评论 -
hibernate三种常用继承映射的优缺点
方式一:整个的继承体系就用一张表、建立关系模型原则:描述一个继承关系只用一张表,也就是说子类所使用的表与父类相同优缺点:首先表中引入的区分子类的字段,也就是包括了描述其他字段的字段。其次,如果某个子类的某个属性不能为空,那么在数据库一级不能设置该字段not null(非空),维护起来方便,只需要修改一个表,灵活性差,表中冗余字段会随着子类的增多而越来越多,在任何情况下,都只需处理一个表,对原创 2011-12-14 20:18:34 · 4825 阅读 · 2 评论 -
Write operations are not allowed in read-only mode (FlushMode.NEVER/MANUAL)异常解决方法
发生如下异常:Write operations are not allowed in read-only mode(FlushMode.NEVER/MANUAL)..解决方法,在web.xml里面的OpenSessionInViewFilter配置初始化参数,如下hibernateFilterorg.springframework.orm.hibernate3.suppor原创 2014-05-29 08:55:59 · 1506 阅读 · 0 评论