HIbernate是一种ORM(Object Relation Mapping)就是对象关系映射,Hibernate可以轻松的把数据库中的表映射成我们类描述的对象(一般而言,一张表或者一个视图会对应程序中的一个类),这样在我们连接数据库的时候,可以像访问对象一样简单的访问数据库中的表,如果对对象进行修改,修改的结果Hibernate会自动帮你保存回数据库,你就不用组织SQL语句,和打开关闭数据库那么复杂的操作了。Hibernate提供的查询语句是HQL,是一种面向对象的查询方式,很简单。并且Hibernate会使你的程序与具体的数据库分开(一般情况下,不同的数据库提供的SQL语句是不完全相同的,具有数据库相关性)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标记一样的标签。然后是过滤,将请求进行过滤,最后是制定请求提交和跳转的方向。
以上是个人观点,不保证权威!
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....