Follow Me:深入浅出学习Hibernate一:Hibernate概述

来源:互联网 发布:江苏恩华三唑仑淘宝 编辑:程序博客网 时间:2024/06/05 06:59

花絮

             现在编程过程中框架越来越多,框架的好处我们每个人都享受这它的魅力,有了框架我们最受益的是我们在编程过程中的是重用,采用框架统一定义的接口,从而使构件间的通信简单。

       我们是否思考过,MVC中数据持久层用JDBC写是否合理,是否有最简单的写法,时候有更加好的架构来实现这一层的开发,但是是肯定的Hibernate框架就是运用持久化技术实现对JDBC的封装。        

思考


       请问大家对Hibernate了解多少?大家想不想了解Hibernate?那我们为什么要了解Hibernate?Hibernate在编程时给我们带来了什么方便之处,不便之处?等等一系列问题,很有意思,值得我们去研究。不了解也没有关系,下面请跟随我一起进入Hibernate的学习。

概述

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

加深理解

通过这个概述想必大家对Hibernate有了一定的了解,那么就深入的谈一谈谈几个问题,加深对Hibernate定义的理解。

1.      轻量级框架和重量级框架

          轻量级框架:减少开发复杂度,相应的它的处理能力便有所减弱。重要是:应用不依赖于容器,这样可以提高开发调试效率;网上提供了大量的开源项目代码,有利于快速开发。适用于中小型企业应用开发。

         重量级框架:需要依赖于一个非常庞大的容器,容器体积庞大,占用资源过多,在开发的时候效率比较低。适用于大型企业。

2.      提到Hibernate令我想到国内应用的ssh三种框架(Spring + Struts +Hibernate)

    Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。

    Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

    Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库

相比之下可以联想到外国有什么框架值得我们学习?从很多资料可以查到在外国出名的框架是PHP框架。

    PHP开发框架有助于促进快速软件开发(RAD),这节约了你的时间,有助于创建更为稳定的程序,并减少开发者的重复编写代码的劳动。这些框架还通过确保正确的数据库操作以及只在表现层编程的方式帮助初学者创建稳定的程序。PHP开发框架使得你可以花更多的时间去创造真正的Web程序,而不是编写重复性的代码。(PHP框架介绍)

3.      为什么要研究外国的框架?

        这个问题我个人认为,中国的编程都是从外国学习而来,外国是编程的发展的潮头,我们应该试图去捕捉潮头,这样我们的编程思维不会落伍,才能保持我们每天都有新鲜的血液充斥我们的大脑。其实我对于PHP框架也不是很了解,但是我对一些基于PHP框架的东西只能看了一个皮毛,具体每种PHP框架中是如何实现,这个还没有研究。但是我们也应该捕捉国际大潮的发展趋势,发展我们的技术,促进我们的变成水平的提升。

4.      解析Hibernate在MVC的位置


        大家看到这个图,一眼就知道了Hibernate是进行数据持久层的封装,也就说用Hibernate操作实体类和实体类的映射文件代替了原来的JDBC语句,从而进行了对数据持久化技术的封装。这样做使我们的编程更加高效。

5.hibernate的优缺点

       优点:

               1.对象/关系数据库映射(ORM):使用完全面向对象的思想操纵关系数据
               2.提高生产力
               3.可移植性

               4.没有侵入行,支持持久化

      缺点:

              1.使用数据库特性的语句,将很难调优

               2.对大批量数据更新存在问题

               3.系统中存在大量的统计查询功能

      所以:一般我们结合Hibernate和JDBC语句各自的优缺点进行组合使用才能凸显我们的编程更加完美。

Hibernate总结:使用Hibernate可以使我们采用对象化的思维操作数据库模型,建立对象化思维思考数据关系是这个框架的特色,它让我们体会面向对象编程好处,更加符合我们的思维方式。

Follow Me:深入浅出学习Hibernate二:Hibernate第一实例




原创粉丝点击