「6」进大厂必须掌握的面试题-Hibernate
1.什么是Hibernate Framework?对象关系映射或对象关系管理(ORM)是将应用程序域模型对象映射到关系数据库表的编程技术 。 Hibernate是基于Java的ORM工具 , 它提供了一个框架 , 用于将应用程序域对象映射到关系数据库表 , 反之亦然 。
Hibernate提供了Java Persistence API的参考实现 , 使其成为具有松散耦合优势的ORM工具的绝佳选择 。 我们可以使用Hibernate持久性API进行CRUD操作 。 Hibernate框架提供了使用JPA批注以及基于XML的配置将纯旧的Java对象映射到传统数据库表的选项 。
同样 , Hibernate配置也很灵活 , 可以从XML配置文件以及以编程方式完成 。
2.使用Hibernate Framework有哪些重要好处?使用Hibernate框架的一些重要好处是:
- Hibernate消除了JDBC附带的所有样板代码 , 并负责管理资源 , 因此我们可以专注于业务逻辑 。
- Hibernate框架提供对XML和JPA注释的支持 , 这使我们的代码实现独立 。
- Hibernate提供了一种与SQL类似的强大查询语言(HQL) 。 但是 , HQL完全面向对象 , 并且了解诸如继承 , 多态性和关联之类的概念 。
- Hibernate是Red Hat Community的一个开源项目 , 已在全球范围内使用 。 这使它成为比其他方法更好的选择 , 因为学习曲线很小 , 并且有大量的在线文档 , 并且可以在论坛中轻松获得帮助 。
- Hibernate易于与其他Java EE框架集成 , 因此非常流行 , Spring框架提供了将Hibernate与Spring应用程序集成的内置支持 。
- Hibernate支持使用代理对象进行延迟初始化 , 并且仅在需要时才执行实际的数据库查询 。
- Hibernate缓存有助于我们获得更好的性能 。
- 对于数据库供应商特定的功能 , Hibernate是合适的 , 因为我们还可以执行本机sql查询 。
3.解释Hibernate架构 。
文章插图
4. get和load方法之间有什么区别?下面给出了get()和load()方法之间的区别 。
没有 。get()** load() 1) 如果找不到对象 , 则 返回null。如果找不到对象 , 则引发ObjectNotFoundException。2) get()方法总是命中数据库 。load()方法不会访问数据库 。3) 它返回一个真实的对象 , 而不是proxy。它返回一个代理对象 。4) 如果您不确定实例是否存在 , 则应使用它 。如果您确定实例存在 , 则应使用它 。
5. Hibernate与JDBC相比有什么优势?Hibernate框架相对于JDBC的一些重要优点是:
- Hibernate删除了JDBC API附带的许多样板代码 , 这些代码看起来更清晰易读 。
- Hibernate支持继承 , 关联和集合 。 JDBC API不提供这些功能 。
- Hibernate隐式提供事务管理 , 实际上 , 大多数查询无法在事务外部执行 。 在JDBC API中 , 我们需要使用commit和rollback编写用于事务管理的代码 。
- JDBC API抛出SQLException, 这是一个已检查的异常 , 因此我们需要编写许多try-catch块代码 。 在大多数情况下 , 它在每个JDBC调用中都是多余的 , 用于事务管理 。 Hibernate包装JDBC异常并抛出JDBCException或HibernateException未经检查的异常 , 因此我们不需要编写代码来处理它 。 Hibernate内置的事务管理功能消除了try-catch块的使用 。
- Hibernate查询语言(HQL)更加面向对象 , 并且与Java编程语言非常接近 。 对于JDBC , 我们需要编写本机SQL查询 。
- Hibernate支持更好的性能缓存 , 不缓存JDBC查询 , 因此性能低下 。
- Hibernate提供了一些选项 , 通过它们我们也可以创建数据库表 , 因为JDBC表必须存在于数据库中 。
- 华为员工必须用华为手机?内部员工:主管用友商手机会“倒霉”
- 国家发布“铁令”,微信、支付宝始料未及,必须作出整改
- 一个亮点解读 创维小湃P3 Pro必须要买的理由
- 手机必须双扬声器 魅族17系列告诉你这不是噱头
- 内存大厂跨界之作!芝奇Enki 360一体式水冷评测:高密度冷排稳压18核心
- 国家点名!互联网大厂们,请当个人
- 事关“不配送充电头”一事!官媒正式发话!“吐槽”必须有
- 比原子弹还稀有,全球就两国掌握,光刻机为什么如此难造?
- 在线教育陷入持久战 作业帮凭“长期主义”掌握主动权
- 青少年|封面评论 |“青少年模式”依旧漏洞百出,标准化合规框架必须落地