Spring入门1

来源:互联网 发布:投资域名后悔死了 编辑:程序博客网 时间:2024/06/08 05:21

首先我们要明白,什么是Spring?

Spring Framework(简称Spring)是J2EE应用程序框架,不过更严格地讲它是针对Bean的生命周期进行管理的轻量级容器,它是一个开源的控制反转和面向切面的容器框架,主要目的是简化企业开发。


为什么Spirng是容器框架?什么是控制反转(Ioc)和面向切面(AOP)呢?

框架:

Spring可以将简单的组件进行配置,组合成为复杂的应用,它搭好了架子,我们只需要按照它的规则进行配置就可以称为复杂的应用。在Spring中,应用对象以声明的方式进行组合。比较典型的是XML文件。

容器:

Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一个容器。当然你可以按照你的需要配置Spring管理对象的方式,例如返回的对象是单例还是一个新的对象等等。

控制反转(Ioc):

这是控制反转的示意图:


意思就是说,Spring可以帮我们管理依赖对象的创建和维护,当我们需要某个对象的时候,就问Spring拿这个对象,Spring就会返回这个对象给我们,而不需要我们手动去创建和销毁。控制反转的意思就是将依赖对象的创建维护控制权转移给了外部容器,应用本身不负责依赖对象的创建和维护,是由Spring容器替我们管理的。

控制反转也叫依赖注入,是指Spring管理依赖对象的方式,容器动态的将依赖对象注入组件中。

面向切面(AOP):

Spring提供了面向切面编程的支持,允许通过分离应用的业务逻辑与系统级服务(审计,事务管理)进行内聚性的开发。应用对象只需要完成业务逻辑,并不负责系统级的关注点,例如日志或者事务支持。


那我们为什么要使用Spring呢?

1.降低组件的耦合度,实现软件各层之间的解耦。
2.可以使用容器提供的众多服务。
3.容器提供了AOP技术(面向切面的编程),利用它很容易实现如权限拦截、运行期监等功能。
4.使用spring不需要手动控制事务,用面向切面实现,在执行的方法中会自动的执行事务。

.....

总的来说就是因为Spirng方便,可以让我们集中注意力完成业务方面的逻辑,并且兼容性很好,而且轻量。


在谈论Spring的实际使用之前,我们首先要强调一个概念。

我们应该运用面向接口的方式编程。为什么我们需要这么做?

因为面向接口的方法极大的增强了灵活性。在开发Web项目的时候,项目是需要明确的分层的,否则就会乱七八糟一塌糊涂。而分层就会涉及到接口来连接,各层之间只开放接口,这样某层发生了问题,其他层也不需要进行修改。


Spring将所有容器的对象都称为bean。我们可以理解Spring是一个大型的工厂,而Spring容器中的bean就是这个工厂的产品,而这个工厂能生产什么样的产品,就取决于配置文件中的配置。

1 0