SSH 面试题总结
题目 1:Hibernate 工作原理及为什么要用?
原理:
hibernate,通过对 jdbc 进行封装,对 java 类和 关系数据库进行 mapping,实现了对关系数据库的面向对
象方式的操作,改变了传统的 jdbc + sql 操作数据的方式,从而使开发人员可以话更多精力进行对象方面的
开发
,创建 SessionFactory
Sesssion
Transation
Session
SesstionFactory
为什么要用:
1. 对 JDBC 访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。
2. Hibernate 是一个基于 JDBC 的主流持久化框架,是一个优秀的 ORM 实现。他很大程度
的简化 DAO 层的编码工作
3. hibernate 的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。它支持各
种关系数据库,从一对一到多对多的各种复杂关系。
题目 2: 什么是 Hibernate 延迟加载?
延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓延迟加载就是当在真正需要
数据的时候,才真正执行数据加载操作。在 Hibernate 中提供了对实体对象的延迟加载以及
对集合的延迟加载,另外在 Hibernate3 中还提供了对属性的延迟加载。
题目 3:Hibernate 中类之间的关联关系有几种?(如:一对多、多对多的关系)
many-to-one、one-to-many、many-to-many、 one-to-one
题目 4: 说下 Hibernate 的缓存机制
一、hibernate 一级缓存
(1)hibernate 支持两个级别的缓存,默认只支持一级缓存;
(2)每个 Session 内部自带一个一级缓存;
(3)某个 Session 被关闭时,其对应的一级缓存自动清除;
二、hibernate 二级缓存
(1) 二级缓存独立于 session,默认不开启;
题目 5: Hibernate 的查询方式
本地 SQL 查询、Criteria、Hql
题目 6: 如何优化 Hibernate?
,不使用单向一对多
,用多对一取代
,不使用集合缓存
题目 7: Struts 工作机制?为什么要使用
ssh面试题总结~~ 来自淘豆网www.taodocs.com转载请标明出处.