Hibernate面试题部分汇总集合
时间:2025-02-28
时间:2025-02-28
此文档主要简绍J2EE中的hibernate面试突击问题部分集合
Hibernate常见的面试问题
Hibernate
1.Hibernate简介?
Hibernate是一个开源的对象关系映射框架,它对JDBC进行了非常轻量级的 对象封装,使得Java程序员可以随心所欲的使用面向对象编程思想来操纵数据库。
2.Hibernate工作原理?及为什么要用?
Hibernate是一个JDO工具。它的工作原理是通过文件把值对象和数据库表之间建立起一个映射关系,这样,我们只需要通过操作这些值对象和Hibernate 提供的一些基本类,就可以达到使用数据库的目的。
1)对JDBC操作提供封装,方便操作简化数据库访问的代码,使用面向对象的方式操作DAO;
2)简化DAO层的代码量ORM从关系型DB到面向对象(java)的转变 ;
3)在java代码中充斥着大量的sql语句不便于维护,但是ORM映射可以减少此类代码,便于维护 ;
3.Hibernate的优点和缺点?
⑴Hibernate的优点:
1).Hibernate使用Java反射机制,而不是字节码增强程序来实现透明性;
2).Hibernate的性能非常好,因为它是一个轻量级框架。映射的灵活性很出色;
3).它支持多种关系数据库,从一对一到多对多的各种复杂关系;
(2)Hibernate的缺点:
它限制您所使用的对象模型,如一个持久性类不能映射到多个表,其独有的 界面和可怜的市场份额也让人不安。
4.Hibernate的缓存机制?
Hibernate的缓存包括Session的缓存和SessionFactory的缓存,其中 SessionFactory的缓存又可以分为两类:内置缓存和外置缓存。Session的缓存是内置的,不能被卸载,也被称为Hibernate的第一级缓存。SessionFactory的内置缓存中存放了映射元数据和预定义SQL语句,SessionFactory的内置缓存是只读的,应用程序不能修改缓存中的映射元数据和预定义SQL语句,因此SessionFactory不需要进行内置缓存与映射文件的同步。SessionFactory的外置缓存是一个可配置的插件。在默认情况下,SessionFactory不会启用这个插