Hibernate是用于什么的框架

HIbernate是一种ORM(Object Relation Mapping)就是对象关系映射,Hibernate可以轻松的把数据库中的表映射成我们类描述的对象(一般而言,一张表或者一个视图会对应程序中的一个类),这样在我们连接数据库的时候,可以像访问对象一样简单的访问数据库中的表,如果对对象进行修改,修改的结果Hibernate会自动帮你保存回数据库,你就不用组织SQL语句,和打开关闭数据库那么复杂的操作了。Hibernate提供的查询语句是HQL,是一种面向对象的查询方式,很简单。并且Hibernate会使你的程序与具体的数据库分开(一般情况下,不同的数据库提供的SQL语句是不完全相同的,具有数据库相关性)Hibernate通过方言的形式在配置文档中屏蔽了这种数据库的异构性。
简单说Hibernate方便了程序员对数据库的操作,同时屏蔽了数据库的异构性。
但是Hibernate不适合用于高性能的数据库,如果数据库的数据量大,访问频繁,需要性能优化,用Hibernate很显然不是一个很好的选择。因为通用的、简便的东西,性能肯定不行。

Hibernate开发过程很简单,Hibernate需要您指定一个对象关系映射文件,就是数据库中的哪个表,对应于程序中的那个类,表中的哪些字段对应于程序中类的哪些属性。这样Hibernate才能帮你完成映射。(以前用的是xml配置文档进行映射,现在多使用标注(annotation))。

Spring有两个核心技术,就是AOP面向切面编程,和IOC依赖注入。简单的说AOP就是切面编程,如果您想理解切面编程,您需要具备java设计思想中的代理思想。所谓代理,就是在一个对象中的方法执行前和执行后可以插入些业务处理之外的代码(主要是,日志、异常处理和session控制等)。这样,这些与业务无关的逻辑就可以单独编写,然后插入到那些需要的地方。想进一步了解AOP,请学习java的代理模式(动态代理模式)。IOC是依赖注入,这个是java的创建模式,(如果想深入了解依赖注入,请参考java的工厂模式)。实际Spring就是一个大的工厂,根据用户提供的xml(现在是标记annotation)配置文档,创建用户描述的对象,并完成对象间依赖关系的赋值,这就是IOC思想,如果您不明白,请参考工厂模式(静态工厂模式,工厂模式和抽象工厂模式)。

Struts实际上是MVC中的V就是View显示,M是modle一般由Hibernate提供,C是controller一般由Spring来提供。(我这里专门指SSH框架,别的框架MVC对应的也不同)。Struts的核心思想是过滤器,了解过滤器模式请看(责任链模式)。Struts实际上完成的功能有三个,一个是界面的显示,他提供了一些像html标记一样的标签。然后是过滤,将请求进行过滤,最后是制定请求提交和跳转的方向。

 

 

 

Hibernate更多的是实现了MVC中的M层(数据模型层),用了Hibernate可以不用
SQL语句了,它是根据对象查询数据的,也就是管理DAO和实体BEAN的.
开发过程:主要是配置文件:核心文件(hibernat.cgf.xml)配置数据连接和映
射文件等;mapping.xml(映射文件)也实体类bean与数据库的表进行映射的文件
Spring:AOP--面向切面思想:简单的说就是透明的不改变原业务的添加一些新的
功能,它是切面的对于原程序来说是独立的,如:添加权限管理/日志/异常处理等
IOC:控制反转:利用反射(实际所有框架都有利用反射)帮你实例化所需的类(也就是把实例化的控制权交给Spring了不用你管了)

Struts可以说只是在MVC模式开发的框架,它更多的是实现了V(视图层)和C(业务层)
如:V层用到的标签库,C层的Action

而Spring可以说是管理Hibernate和Struts的

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值