Spring入门

Spring 入门

spring 简介

Spring 框架的核心特性是可以用于开发任何 Java 应用程序,但是在 Java EE 平台上构建 web 应用程序是需要扩展的。 Spring 框架的目标是使 J2EE 开发变得更容易使用,通过启用基于 POJO 编程模型来促进良好的编程实践。

spring 架构图

spring架构

Spring 是一个从实际项目开发经验中抽取的,可高度重用的应用框架.

Spring 的主要作用

  1. springBeanFactory:
    所有的实例可以都可以配置到 spring 工厂中,新建对象时通过工厂来新建,降低了耦合性. 并且可以配置对象的作用域
  2. Spring 依赖注入(控制反转):
    相当于一个工厂管理对象之间的依赖关系
    用户只需要在 spring 中配置好依赖关系(在 bean 中配置属性的方式配置所依赖的对象),在调用对象的时候,就不需要再管依赖关系了(不用 new 那些需要依赖的对象了)。比如一个对象需要另一个对象来协助完成,这时不需要主动创建所需对象,spring 容器会自动创建所需要的实例,然后注入进调用者中
  3. SpringAOP(面向切面):
    实现在执行过程前后执行另外的代码,进行拦截、监控等功能
    也就是用来定义,在方法前后要完成的什么功能
    spring 的事务管理,就是基于 AOP 来实现的

总结

  1. 方便解耦,简化开发
    Spring 就是一个工厂,可以将所有对象的创建以及依赖关系的维护都交给它
  2. AOP 编程的支持
    Spring 提供了面向切面编程,可以方便的进行权限拦截和运行监控
  3. 方便结合其他框架
    Spring 内部支持了和其他框架的整合,如 mybatis
  4. 方便程序测试
    Spring 支持 JUnit4,可以通过注释方便的测试
  5. 降低了调用 JavaEE 中一些 API 的难度
    比如对 JDBC 等进行了封装
  6. 声明式事务的支持
    只需要配置就可以完成对事务的管理