【hibernate面试题2】涉及了许多关于Hibernate框架的核心知识点,包括检索策略、SQL日志显示、缓存策略以及Hibernate与其他技术(如Spring和Struts)的整合。下面将逐一详细解析这些概念。 1. **Hibernate检索策略**: - **立即检索(Eager Fetching)**:优点在于透明度高,方便导航关联对象,但可能导致过多的SELECT语句和内存浪费。 - **延迟检索(Lazy Fetching)**:应用程序可以根据需要决定何时加载对象,减少无用的数据库交互,节省内存。缺点是游离状态下的代理类需要在持久化状态下初始化。 - **迫切左外连接检索(Fetch Join)**:兼顾透明性和效率,但可能加载不必要的对象,且复杂的表连接可能影响性能。 2. **查看Hibernate生成的SQL**:在`applicationConfig.xml`中设置`hibernate.show_sql`为`true`,即可在控制台查看执行的SQL。但要注意,这可能会影响性能优化。 3. **Hibernate缓存策略**: - **只读(Read-only)**:适用于不更新的数据,是最简单且高效的策略。 - **读/写(Read/write)**:适用于需要更新的数据,比只读策略消耗更多资源。 - **非严格读/写(Nonstrict read/write)**:适合频繁读取但极少更新的数据,不保证事务间的一致性。 - **事务化(Transactional)**:适用于JTA环境,提供完全事务化的缓存管理。 4. **sorted collection 和 ordered collection**: - **sorted collection**:在内存中通过Java比较器排序。 - **ordered collection**:在数据库层面通过`ORDER BY`进行排序。 5. **Hibernate在Spring和Struts中的应用**: - Hibernate简化了数据访问层的代码,提供ORM(对象关系映射)解决方案,增强了反射机制,性能优秀,支持多种关系映射。 6. **延迟加载(Lazy Loading)**: - Hibernate通过延迟加载策略,只在实际访问数据时才加载,节省内存,提高性能。 7. **类之间的关系映射**: - 通过配置文件如`one-to-many`、`many-to-one`、`many-to-many`等映射关系,实现类与类的关联。 8. **Hibernate缓存机制**: - **一级缓存**(内部缓存):默认事务级缓存,每个Session内部维护。 - **二级缓存**:可选的全局缓存,可进一步分为应用级和分布式缓存,需考虑数据一致性、大小、更新频率等因素。 9. **Hibernate查询方式**: - **SQL**:直接执行SQL查询。 - **Criteria API**:面向对象的查询方式。 - **HQL(Hibernate Query Language)**:面向对象的查询语言,支持属性、参数、关联、分页和统计函数查询。 10. **Hibernate优化**: - **双向一对多关联**:减少N+1选择问题。 - **批处理**:批量操作提高性能。 - **合理使用缓存**:根据需求选择合适的缓存策略。 - **避免过多的JOIN操作**:减少数据库交互。 - **使用二级缓存**:在合适的情况下提高性能。 - **调整Hibernate配置**:如连接池大小、批处理大小等。 理解并掌握这些知识点对于理解和优化Hibernate的应用至关重要,也是面试中常见的问题,能帮助求职者展示其在持久化领域的专业水平。
剩余15页未读,继续阅读
- 粉丝: 32
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于Qt和AVR的FestosMechatronics系统终端.zip
- (源码)基于Java的DVD管理系统.zip
- (源码)基于Java RMI的共享白板系统.zip
- (源码)基于Spring Boot和WebSocket的毕业设计选题系统.zip
- (源码)基于C++的机器人与船舶管理系统.zip
- (源码)基于WPF和Entity Framework Core的智能货架管理系统.zip
- SAP Note 532932 FAQ Valuation logic with active material ledger
- (源码)基于Spring Boot和Redis的秒杀系统.zip
- (源码)基于C#的计算器系统.zip
- (源码)基于ESP32和ThingSpeak的牛舍环境监测系统.zip