重新认识你认识的Hibernate

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

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

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

Hibernate 概述:ORM意义

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

Hibernate 概述:Hibernate 是什么?

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

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

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

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

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

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

6、自动检查脏数据

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

Hibernate 概述:Hibernate 优点

提高生产率(Productivity)

可维护性(Maintainability)

更好性能(Performance)

厂商独立性(Vendor independence)

Hibernate 概述:Hibernate 原理

声明:本文章属于个人原创,转载请注明文章出处。

原文发布于微信公众号 - 全华班(quanhuaban)

原文发表时间:2018-03-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ImportSource

你真的知道你喜欢REST而不是RPC的原因吗?

本文讨论的内容主要是请求风格,所以本文中所说RPC侧重于HTTP请求风格,而非java中的RPC设计模式。 有关REST和RPC的讨论或争论一直...

31860
来自专栏全华班

springcloud学习手册-什么是springcloud?

了解springcloud前先简单了解一下springboot框架。

321110
来自专栏Java职业技术分享

阿里P8架构师谈:什么是缓存雪崩?服务器雪崩的场景与解决方案

分布式系统都存在这样一个问题,由于网络的不稳定性,决定了任何一个服务的可用性都不是 100% 的。当网络不稳定的时候,作为服务的提供者,自身可能会被拖死,导致服...

42900
来自专栏魏琼东

AgileEAS.NET SOA 中间件平台5.2版本下载、配置学习(一):下载平台并基于直连环境运行

一、前言      AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速...

28070
来自专栏Java进阶架构师

IntelliJ IDEA 内存优化最佳实践

原文链接::http://blog.oneapm.com/apm-tech/426.html

9420
来自专栏take time, save time

三十天学不会TCP,UDP/IP网络编程 - UDP的实践--DHCP

在经历了一顿忙碌加出去玩了玩之后,我又开始重新更新了~这是最新的一篇~完整版可以去gitbook(https://www.gitbook.com/@rogerz...

387120
来自专栏Java3y

外行人都能看懂的SpringCloud,错过了血亏!

认识我的朋友可能都知道我这阵子去实习啦,去的公司说是用SpringCloud(但我觉得使用的力度并不大啊~~)…

17010
来自专栏云计算

服务集成时需避免的两个错误

随着面向服务架构(下文简称 SOA,Service Oriented Architecture)的出现,企业通过将业务功能分解为多重服务 [1],它们迅速地从整...

45150
来自专栏史上最简单的Spring Cloud教程

我是如何根据豆瓣api来理解Restful API设计的

1.什么是REST REST全称是Representational State Transfer,表述状态转移的意思。它是在Roy Fielding博士论文首次...

29450
来自专栏BestSDK

5个不为人知的Java API使用技巧

程序员都喜欢使用API!例如为app应用构建API或作为微服务架构体系的一部分。当然,使用API的前提是能让你的工作变得更轻松。为了简化开发和提高工作效率所作出...

36040

扫码关注云+社区

领取腾讯云代金券