感觉hibernate学起来好难,用起来也难,直接用Jdbc好的了

感觉hibernate学起来好难,用起来也难,直接用Jdbc好的了,第1张

Hibernate其实是对JDBC一种轻量级的封装,楼下的某些朋友一看回答的水平就知道根本就没怎么接触过hibernate,今天我就给你好好的介绍下:
Hibetnate一般用做持久层,刚刚也说过了时对JDBC的轻量级封装,传统的对数据库 *** 作无疑是硬编码方式,但是这样做耦合度极高,是非常“化石”的写法,真正的企业级开发你是见不到这样做的,除非特殊情况,我们都知道,现在市面上所有的商用数据库,Oracle,DB2,SqlServer等等都是面向关系的,但是我们使用的编程语言如:c#,Java等等都是面向对象的,面向关系和面向对象之间的 *** 作肯定是不会同步的,这就是我们首先选择Hibernate的一个重要原因,Hibernate完全是采用面向对象的方式来 *** 纵数据库,使我们能够简化开发。
对象之间的依赖关系,继承关系我们都可以采用Hibernate映射到数据库中,这是传统的JDBC望尘莫及的,JDBC查询数据基本上没任何优化可讲,哪怕是采用存储过程也仅仅是提高数据查询速度,根本解决不了大并发查询过程中对数据库造成的压力以及访问次数,但是Hibernate可以做到,采用Hibernate的一级缓存,二级缓存我们可以对数据库进行高性能优化,比如两条相同的查询语句,查询相同的数据,Hibernate首先会从数据库查找,第一次查询的时候,也会把查询的数据放入缓存中最备份,第二次查询的时候就不用访问数据库了,直接从缓存中获取,这就大大的优化的数据库。
Hibernate本身支持传统的sql,也就是JDBC,当然不多用,也懒得用,因为Hibernate提供了面向对象的查询语句HQL,这样完全可以简化SQL语句和弥补面向关系数据库的不足之处。
说了这么多,我也告诉你,Hibernate学起来难度还是有,尤其是对象之间的关联关系,one_to_many,many_to_one等等,是需要你花时间的,真正的企业级开发对数据库实施SRUD不仅仅会采用Hibernate,也会搭上存数过程连用,这样既可以提高访问速度,因为存储过程是预编译,也可以缓解数据库压力,也就是优化。
所以请以后不懂Hibernate的人少答非所问。

首先你要有java的基础(就是SE),其次需要了解jdbc(附带的你也要了解一下数据库增删改查的语法),接着像2L说的了解servlet,jsp,seesion(当然与jsp直接关联的html语法也是需要了解的,不需要精通,能看懂,会简单的修改就可以了,css也是)
首先学strust2,这个框架式控制层框架,比较常用,很多公司就是servlet+jdbc+jsp+strust2来完成的
其次是hibernate,这个框架主要就是为了简化jdbc的,对于复杂的业务逻辑查询为了提高效率很多公司是不用该框架,直接写jdbc的,对于简单逻辑直接用hibernate可以节省很多的代码量
最后是spring,学spring并不是为了企业级的开发(虽然有企业用,但很多项目并不用spring),学spring的最大作为就是告诉程序员如何去写框架,如何去设计一款软件,spring里包含的知识可以说贯穿了整一个软件的开发流程

在hibernate配置文件里配set,不意味着数据库中一定配了关联关系 两码事
在hibernate配置文件配set可以实现对象导航,从一方可以定位到多方,而不必再写查询多方的数据库表的代码,简化代码。

这个没有什么先后顺序 ,hibernate 可以用在任何场合 不只是web应用 而struts2用在web方面的mvc框架 你可以先学hibernate 然后再学struts2 因为struts2要有一些servlet还有jsp html等的基础才可以 hibernate则只需要有jdbc的基础还有xml的基础就行了 反正我学习的时候是这样的一个过程 struts1学不学到不是那么重要 struts2学了以后再看看和struts1的区别就行了 没必要都学 现在用struts1的人不多了

不难学,只是一个框架,推荐你一本书,Java程序员就业经典视频培训系列:Hibernate开发与实战(附DVD光盘1张),里面的光盘教程,我就是一边听一遍跟着做学会的,

我有视频,需要的话可以发给你

所谓三大框架,即struts、spring及hibernate。要想学习好三大框架,快速掌握,最好的方法无疑是理论与实践结合,由简入繁,由单一到全部,逐一攻克,具体学习步骤如下:
1、先学习struts,struts是世界上第一个经典的mvc框架,其作用就是将业务逻辑与视图分离开来,使得项目层次分明,清晰,更具有结构性。学习一个框架,首先要知道这个框架的作用,有哪些特征,然后就是了解其实现原理,最后就是结合实际项目例子来进一步加深对这个框架的理解。
2、struts掌握了后,接着学习spring,spring就是一个大的工厂,其轻量理强大,它改变了传统的编程模式,将实例化bean交给了容器管理,使得项目中类的耦合度大为降低。spring的特性很多,较为有名就是IOC(控制反转)与AOP(面向世面编程)。要想学习好spring,就要先掌握相应的理论知识点,然后就是动手敲代码,将它的每一个特性都实现一遍,功力到了,自然就掌握了。
3、掌握了以上两大框架之后,可以继续深入学习hibernate框架了。hibernate是一个orm-maping框架,即对象关系映射,将数据库表反转映射成实体对象,使得用户在 *** 作底层数据库时,不用再写那些繁琐的SQL语句,而是通过直接 *** 作对象将数据持久化到数据库。学习好hibernate,首先要掌握其原理,映射配置,然后就是对其每一个特性进行编码验证,如一对一,一对多,多对多关系映射等。可以不结合项目,只要能连上数据库进行相应 *** 作即可。
4、三大框架都初步掌握了后,就可以进行整合学习了。三大框架在整合分工也很明确,也是一个经典的MVC框架,其中struts充于其中的V(即视图层),spring充当C(即业务控制层),hibernate充当M(持久层)。整合学习三大框架的难点在于其中的配置,依赖及管理,这非一两天能完成的事情,得要多查阅相关书籍交资料,动手实践,用心体验。

最后,要想学习好框架,除了掌握其原理、特性外,还要多动手编码,多思考,熟能生巧。一句话,纸上得来终觉浅,绝知此事要躬行。

spring很简单的,就是依赖注入也叫做控制反转(IOC) inverse of control!
他的依赖注入主要是解决耦合的问题,他的AOP主要是用于事务的动态植入这点有点类似EJB,不过EJB是重量级的,spring是轻量级的!
spring还包括了DAO模式的实现,包括对一些框架的集成!
还有一些Template和CallBack的简化!
也就这点东西,不是很难,如果学会有一周足够了,想深入的了解,你就要去看看CgLib和java本身的动态代理类,看看具体是如何做AOP的,在学习一些设计模式例如DAO或者Template模式,CallBack模式,自然就明白spring的理论和实现了!
hibernate学好还不简单,当你认为这个问题你能学好时,你就已经学好了一半了,当然需要些根据的,比如一个好的视频教程。
看十天书不如看一天视频呀。 刻骨铭心的理解。当然看了教程之后你也要看看书的,毕竟理论的掌握好。
学习它们两个个一个共同之处是配置文件初学时尽量自己多写写!
我是一名JAVA程序员,不会的可以请教我~~~呵呵
希望我的回答能够帮到您!~~~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12814453.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存