背景特性

Spring背景特性

特性

  • 轻量非侵入:从大小与开销两方面而言,Spring都是非常轻量的,完整的Spring框架可以在一个大小仅有1M多的JAR文件里发布,并且Spring所需要的处理开销也是微不足道的。

  • 控制反转:Spring通过所谓的IoC控制反转的技术来促进低耦合,在应用了IoC之后,一个对象依赖的其他对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。

  • 面向切面:Spring支持面向切面的编程,并且把应用业务逻辑和系统服务分开。

  • 容器:Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,我们可以基于可配置原型来配置Bean是如何被创建的、如何被关联的;可以设置是创建一个单独的实例或者每次需要时都生成一个新的实例。

  • 框架:Spring可以将简单的组件配置,组合成复杂的应用,在Spring中,应用对象被声明式地组合,典型的是在XML文件中进行声明。Spring也提供了很多的基础功能(事务管理、持久化框架集成等,将应用逻辑的开发留给开发者。

配置方式

Spring 1.x的时代,主要使用XML来配置Bean,我们需要频繁的在开发的类和配置文件之间切换。到了在Spring2.x时代,随着JDK1.5带来的注解支持,Spring提供了声明Bean的注解(@Component,@Service,大大减少了配置量。而从Spring 3.x以后,Spring提供了更为丰富的Java配置的能力(@Configuration,@Bean)等。

Spring Boot

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是Spring Boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像Maven整合了所有的Jar包,Spring Boot整合了所有的框架。

Spring Boot 概述

Spring Boot充分利用了JavaConfig的配置模式以及“约定优于配置”的理念,能够极大的简化基于Spring MVCWeb应用和REST服务开发。Spring Boot可以使得创建独立的产品级别的基于Spring的应用程序变得更加简单,使得能够做到开箱即用。Spring Boot可以用于创建能够直接用 java -jar 命令运行的或者类似于传统的war部署方式的应用程序。同样也提供了所谓的 spring scripts 这样的命令行工具。

下一页