1 Hibernate一对多级联修改/删除时,需要注意哪些问题

参考答案

一对多级联修改/删除时,“一”方会试图维护关联字段,而关联字段在“多”方表中,已经由“多”方维护好了,因此大部分情况不需要这样处理,以免降低效率。

可以在“一”方映射关系文件中,关联属性配置标签上使用inverse=”true”,使得“一”方放弃维护这个关联字段。

2 Hibernate有哪几种查询方式

参考答案

Hibernate有如下几种查询方式

  1. 使用API查询,如get、load
  2. 使用HQL查询
  3. 使用SQL查询
  4. 使用Criteria查询

3 请简述Hibernate一级缓存和二级缓存的区别和联系

参考答案

一级缓存是Session级别的缓存,由Session负责管理,因此一级缓存是Session独享的,即每个Session只能访问自己的一级缓存区。

二级缓存是SessionFactory级别的缓存,由SessionFactory负责管理,因此二级缓存是Session间共享的,即不同的Session都可以访问二级缓存区。

一级缓存和二级缓存相同的地方是,他们缓存的都是对象数据。