学习hibernate和spring感想。

学习内容:
 这天学习了两个非常流行的框架,以前这两个东西在脑海里只有一个模糊的概念,但它们到底是什么东西
还不是很清楚,经过那天一整天的学习,明白了几个问题,这些框架是干什么用的?用他们有什么好处?跟其他类
似的东西比较,它们到底有什么优势?现在就来复习一下这两个框架。
1.spring框架。
 这个框架被大家称为应用层框架。它两个最为核心的技术是IOC和AOP,这两个东西,是什么意思呢?IOC翻译
成中文的意思是“控制翻转”,原来传统的OOP编程,对象的生产、控制和消亡的生命周期过程都是由应用程序员自己
负责,也就是自己控制,后来,比较牛逼的程序员提出了要创造一个容器来管理和控制对象的生命周期。这个想法最终
得以实现是在SUN公司的EJB的SESSION BANE里。后来SPRING框架的创造者让它在比较轻量的环境中实现了,这就是SPRING
中的IOC。AOP——面向切面编程,我们一直以来都只知道OOP,今天提出了一个AOP,这有点新鲜,AOP的意思是将我们的应用
工程抽象成一些重要的关注点,比如一般的系统都会考虑几个问题:日志、加密、事务和并发锁等等问题,这些问题并不是
我们所有的程序员都能解决的,一个人的精力有线,也不可能对这些都精通,那么,有人就提出来了,这些问题可以让一些
技术专家为我们做好,使得技术问题和业务问题的实现得以解耦合。
 这连个东西是怎么实现的呢?其实,OOP界的牛人——GOF已经使用他们的23终设计模式为我们提供了一些解决这些
问题的答案,比如:IOC就可以使用工厂模式得到解决,但他还是有自己的缺陷,他还是需要工厂的代码,这就违背了OOP的
COP(开闭原则,就是代码对于修改是封闭的,就是不允许修改原有的代码,但对于扩展是开放的,我们只能通过对原有代码
的扩展的方式来修改、升级自己的系统)。而使用SPRING里面试实现的IOC只需要修改配置文件就可以,这是允许的。
 AOP的实现,可以通过设计模式里的代理模式来解决。代理模式又分为两种:1、静态代理。2、动态代理。首先是静态
代理,他需要对每个方法的访问都提供一个代理类,这样就导致了过多的代理类,这对于软件的维护并没有带来多大的好处,
所有这种解决办法是不可取的,然后,SUN公司的又提供了一种动态代理的接口,但是编程的时候需要程序员懂得像“反射机制”
等复杂的技术,这增加了程序员的开发难度,也不是很好的解决办法,这时候SPRING提供的对于AOP的实现了,可以让程序员
方便的解决这个问题,提供多终技术问题的实现,它使用的是动态拦截技术,就是在客户端调用某个方法的时候,如果拦截到
调用了某个方法,它会在这个方法前后增加一些方法(是程序员自己设定的),其实,在我们学习SERVLET的时候就用过
这中技术,我们使用了过滤器,就是这样的。
2.hibernate框架。
 改框架的作用就是一句话:简化了程序员的数据库编程,降低了应用层与数据库层的耦合。它其实就是一个在JDBC与应用
程序之间的一个中间件软件,使得我们的数据库编程变得更简单,再也不要些那些烦琐的sql语句了,使得我们的编程编程纯面向
对象编程。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值