温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java之Hibernate面试要点有哪些

发布时间:2021-05-06 13:47:45 来源:亿速云 阅读:117 作者:小新 栏目:编程语言

这篇文章给大家分享的是有关java之Hibernate面试要点有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Java有哪些集合类

Java中的集合主要分为四类:1、List列表:有序的,可重复的;2、Queue队列:有序,可重复的;3、Set集合:不可重复;4、Map映射:无序,键唯一,值不唯一。

1. 为什么要使用 hibernate?

(1).对JDBC做了轻量级的封装,简化了数据访问层编码。

(2).Hibernate是一个ORM框架,开发者可以使用面向对象的思想操作数据库,使用更加方便。

(3) hibernate映射很灵活,支持各种关系数据库,从一对一到多对多的各种复杂关系。

2.比较hibernate的三种检索策略优缺点

(1)立即检索;

优点: 对应用程序完全透明,不管对象处于持久化状态,还是游离状态,应用程序都可以方便的从一个对象导航到与它关联的对象;

缺点:1.select语句太多;2.可能会加载应用程序不需要访问的对象白白浪费许多内存空间;

(2)延迟检索:

优点: 由应用程序决定需要加载哪些对象,可以避免可执行多余的select语句,以及避免加载应用程序不需要访问的对象。因此能提高检索性能,并且能节省内存空间;

缺点: 应用程序如果希望访问游离状态代理类实例,必须保证他在持久化状态时已经被初始化;

(3)迫切左外连接检索

优点:对应用程序完全透明,不管对象处于持久化状态,还是游离状态,应用程序都可以方便地冲一个对象导航到与它关联的对象。使用了外连接,select语句数目少;

缺点:可能会加载应用程序不需要访问的对象,白白浪费许多内存空间;复杂的数据库表连接也会影响检索性能;

3.什么是 ORM 框架?            

(Object Relation Mapping)对象关系映射,即通过类与数据库表的映射关系,将对象持久化到数据库中。

4.hibernate对象的三种状态

Hibernate中对象有三种状态: 临时状态(Transient)、持久状态(Persistent)、游离状态(Detached)

临时状态:刚刚使用new语句创建,还没有被持久化,不处于Session的缓存中。处于临时状态的状态的Java对象被称为临时对象。

持久化状态:已经被持久化,加入到Session的缓存中。处于持久化状态的Java对象被称为持久化对象。

游离状态:已经被持久化,但不处于session的缓存中。处于游离状态的Java对象被称为游离对象。

5.Hibernate是如何延迟加载?

当Hibernate在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务器的性能。

感谢各位的阅读!关于“java之Hibernate面试要点有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI