hibernate面试题
时间: 2024-12-27 19:11:21 浏览: 7
Hibernate是一个流行的Java ORM(Object-Relational Mapping)框架,常用于简化Java应用与数据库之间的交互。面试 Hibernate 的时候,可能会问到以下几个方面的问题:
1. **核心概念**:如何理解持久化、Session、SessionFactory、Transaction等基本概念及其作用?
2. **映射文件**:XML映射文件(hbm.xml)的作用是什么?如何配置实体类、集合以及懒加载策略?
3. **查询语言**:HQL(Hibernate Query Language)和JPA(Java Persistence API)的区别,如何编写复杂的SQL查询和分页查询?
4. **缓存机制**:Hibernate是如何利用第一级和第二级缓存提高性能的?EHCache和Infinispan在缓存中的角色是什么?
5. **事务管理**:如何设置事务的隔离级别和传播行为?Rollback和Commit操作何时发生?
6. **错误处理**:常见的Hibernate异常有哪些?如何诊断和处理这些问题?
7. **优化技巧**:如何减少Hibernate N+1问题?如何调整二级缓存和查询优化?
8. **集成Spring**:与Spring集成的方式,如何使用Spring TransactionManager?
阅读全文