Hibernate估计大家已经用过很多年了吧,好多同学说用过Hibernate,不需要你来讲,但再仔细想想,你能告诉我Hibernate是什么吗?

今天带大家重新认识一下你认识的Hibernate。


1/6

Hibernate 概述:JDBC面临的一些问题

首选写过JAVA JDBC 的同学大家是不是都会遇到类似这些问题。

  • 繁重的代码问题

String sql = "insert into t_test values(null,?)";

PreparedStatement stmt = con.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);

stmt.setString(1, "ss");stmt.executeUpdate();

  • 多表连接的问题

       多表查询的复杂的SQL语句难于维护,要求有很好的JDBC编码能力

  • 多表连接的问题

        多表连接要牵扯到级联操作的相关问题。使用JDBC,编写和维护代码非常不便。使程序员要分很大的经理在JDBC编码上,而真正关心业务的精力就降低了。

  • 层与层之间的耦合严重

  • 性能问题

  在数据量不大的情况下,JDBC的效率要高于Hiberbate,但是在大数据量的情况下,Hibernate的效率远远的高于JDBC


1/6

Hibernate 概述:ORM意义

ORM是对象到关系的映射,它把对表的直接操作变成对持久化类的属性和方法的直接操作。ORM层作为分层体系中的持久层。使用ORM可以简化对数据库的操作,ORM技术可以极大的提高开发效率和开发时间,同时在开发质量上更容易得到保证

1/6

Hibernate 概述:Hibernate 是什么?

开源的持久层框架,对象-关系映射(O/R Mapping)解决方案

  1、开源和免开源和免费的License,我可以在需要的时候研究源代码,改写源代码,进行功能的定制。

  2、轻量级封装,避免引入过多复杂的问题,调试容易,也减轻程序员的负担。

  3、具有可扩展性,API开放当本身功能不够用的时候,可以自己遍码进行展。  

  4、开发者活跃,产品有稳定的发展保障。

  5、透明的持久化过程(使用实体域对象,JAVABEAN/POJO-简单古老的java对象)。

  6、自动检查脏数据

  7、可以动态的生成SQL语句

1/6

Hibernate 概述:Hibernate 优点

提高生产率(Productivity)

可维护性(Maintainability)

更好性能(Performance)

厂商独立性(Vendor independence)


1/6

Hibernate 概述:Hibernate 原理

重新认识你认识的Hibernate_java

重新认识你认识的Hibernate_java_02

重新认识你认识的Hibernate_java_03

重新认识你认识的Hibernate_java_04

重新认识你认识的Hibernate_java_05

重新认识你认识的Hibernate_java_06