当前位置:首页>开发>正文

hibernate!!! 有关hibernate的面试流程: 1、hibernate是什么解决什么问题而出现 2、优缺点

2024-01-02 13:55:48 互联网 未知 开发

 hibernate!!! 有关hibernate的面试流程: 1、hibernate是什么解决什么问题而出现 2、优缺点

hibernate!!!

在Hibernate中,都是对实体类进行操作的,而不是对某个表,而且如果你的配置对了的话,Hibernate还帮你集成了各个表之间的对应关系,省去了不少麻烦;配置文件会帮你更加方便的修改,当某些需求发生变化时,不用大量的修改源代码,改改配置文件就可以了,等等

有关hibernate的面试流程: 1、hibernate是什么?解决什么问题而出现? 2、优缺点?

我只能准确的回答你前三个问号。后面的由于本人知识有限后面的不是很清楚。
1、hibernate是一个轻量级的数据访问框架。说是轻量级,是因为框架和程序之间的密切程度比价低,行话叫耦合度。重量级的是EJB,官方公认的,但是在有那么一段时间,EJB给程序员带来了很多的困扰,所以,现在基本上很少有公司使用EJB做开发了,或许是伤得太深了吧!
hibernate解决了JDBC访问数据时的95%的代码,O(∩_∩)O~,很厉害吧!
2、优点就是简化的访问数据库时所写的代码。缺点就是,写不好,效率不是一般的低,如果公司有高人坐镇的话,hibernate是很好用的数据持久层框架。
3、4不知道。
5、同类型的框架我只知道EJB和Ibatis,EJB对我来说高深莫测,只懂得几个基本的概念。Ibatis是半持久化框架,也就是sql语句需要自己写,Ibatis和hibernate挺像的,如果说有区别的话,就像是全自动和半自动的洗衣机之间的区别,hibernate是全自动的,Ibatis是半自动的。但是如果精通hibernate的话,Ibatis只需一天就能学会。
6、不知道思想,能玩转就不错了,思想都学会的话,应该能自己开发框架了吧!如果我会的话,我去你们公司应聘,你给我年薪多少?最后是玩笑。但是会的话薪水的确是按年薪算的。大约是30W/年的样子吧!

hibernate 关系映射有什么好处

hibernate的关系映射主要是对于数据库中表之间的关系。例如:账单表、客户表。账单表与客户表的关系是多对一的关系。用hibernate的关系映射就不必考虑如何在程序中对应了。查找出某个客户的时候,就可以用客户对象点出属于本人的账单信息。

hibernate的优缺点是什么?

1.Hibernate的优缺点:
优点:1、程序更加面向对象;
2、提高了生产率;
3、方便移植(修改配置文件);
4、无侵入性。
缺点:
1、效率比JDBC略差;
2、不适合批量操作。

2.Hibernate有四种查询方案:
1、get,load方法,根据id查找对象
2、HQL--hibernate query language(查询对象:Query)
3、Criteria--标准查询语言(查询对象:Criteria,查询条件:Criterion)
4、通过sql来查(查询对象:SQLQuery)

Hibernate有什么作用?

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

JAVA Hibernate工作原理及为什么要用


JAVA Hibernate工作原理及为什么要用
hibernate 简介:
hibernate是一个开源框架,它是对象关联关系映射的框架,它对JDBC做了轻量级的封装,而我们java程序员可以使用面向对象的思想来操纵数据库。
hibernate核心接口
session:负责被持久化对象CRUD操作
sessionFactory:负责初始化hibernate,创建session对象
configuration:负责配置并启动hibernate,创建SessionFactory
Transaction:负责事物相关的操作
Query和Criteria接口:负责执行各种数据库查询

hibernate工作原理:
1.通过Configuration config = new Configuration().configure()//读取并解析hibernate.cfg.xml配置文件
2.由hibernate.cfg.xml中的读取并解析映射信息
3.通过SessionFactory sf = config.buildSessionFactory()//创建SessionFactory
4.Session session = sf.openSession()//打开Sesssion
5.Transaction tx = session.beginTransaction()//创建并启动事务Transation
6.persistent operate操作数据,持久化操作
7.tx.commit()//提交事务
8.关闭Session
9.关闭SesstionFactory

为什么要用hibernate:
1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。
2. Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。他很大程度的简化DAO层的编码工作
3. hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。
4. hibernate的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。它支持各种关系数据库,从一对一到多对多的各种复杂关系。

这里罗列得很详细,如满意,望采纳!

最新文章

随便看看