感想
回想了一下自己写过的博客,总感觉缺少一些什么东西,到底缺少什么,自己也说不清楚。“当局者迷,旁观者清”说的是这个道理吗?或许当你看完前面的博客之后,可以给点建议,让我看看究竟缺少些什么。
我一直在想,学了这些框架,几天十几天都可以记得,但是当一两个月过去之后,突然又觉得陌生了,一种熟悉的陌生感总是让我心烦。不管有多么心烦,我也还是要记录我的博客的,或许这就是我的一种转移目光的方式。
Spring的第一次见面
当初开始接触Spring的时候,我就定不准Spring的位置,它到底在表现层、业务逻辑层、持久层中的哪一个层次。后来抛开这个念头,一心学习Spring框架,才发现Spring是一个一站式的开源框架,它可以囊括这三个层次,那它又为什么要和Struts2、Hibernate这两个框架联合使用呢?具体原因我自己也说不清楚,不过在我看来,三大框架结合起来的好处是很明显的,Struts2框架在表现层是使用最广范的,Hibernate框架在持久层也是使用最广泛的,而且两个框架都比SpringMVC提供的自身的SpringMVC和JDBCTemplate使用的方便。
当然了,上面的说法也只是我的一面之词,并非真的就是那样,毕竟我还只是一个初学者。
Spring的概述
- Spring是一个开源的轻量级的JAVAEE框架。免费的,可以到官网下载。
-
Spring是一站式框架,也就是说你不需要使用其他框架就可以开发web项目。Spring在JAVAEE三层结构中,每一层都提供了不同的解决技术。
- WEB层(表示层):SpringMVC。
- Service层(业务层):Spring的IoC容器。
- DAO层(持久层):JDBCTemplate。
-
Spring的核心内容
- AOP:面向切面编程,说白了就是在不修改原来的代码的基础上扩展功能。
-
IOC:控制反转,控制是指创建对象的控制权,反转是指由原来的主动创建(new)变成了被动创建(配置文件)。
- 比如A类中需要使用B类的对象,那么A类就会在自己的类中通过new的方式创建B对象。
- IoC则是不会再从A类中直接new出来一个B类 对象,而是通过Ioc容器创建B类对象,再将B类对象送给A类。
虽然Spring的IOC容器帮我们创建需要的对象,但是他的底层代码实现主要技术有:反射、工厂模式、xml文件使用。也就是说Spring框架也验证了一句话,框架是封装思想的表现者。
说这么多主要还是让大家了解一下Spring框架,初步认识Spring是干什么用的,学习Spring框架时别在意这些意思,只有深入了解和学习Spring框架之后,这些理论上的东西就自然而然的懂了。