1、Spring的发展
1.1、Spring1.x时代
在Spring1.x时代,都是通过xml文件配置bean,随着项目的不断扩大,需要将xml配置分放到不同的配置文件中,需要频繁的在java类和xml配置文件中切换。
1.2、Spring2.x时代
随着JDK 1.5带来的注解支持,Spring2.x可以使用注解对Bean进行申明和注入,大大的减少了xml配置文件,同时也大大简化了项目的开发。
那么,问题来了,究竟是应该使用xml还是注解呢?
最佳实践:
1、应用的基本配置用xml,比如:数据源、资源文件等;
2、业务开发用注解,比如:Service中注入bean等;
1.3、Spring3.x到Spring4.x
从Spring3.x开始提供了Java配置方式,使用Java配置方式可以更好的理解你配置的Bean,现在我们就处于这个时代,并且Spring4.x和Spring boot都推荐使用java配置的方式。
2、SpringBoot简介
那什么是springboot呢?
随着动态语言的流行(Ruby、Groovy、scala、Node.js),java的开发显得格外笨重:繁多的配置、低下的开发效率、复杂的部署流程以及第三方技术集成难度大。
在上述环境之下,Spring Boot应运而生。使用“约定优于配置”(项目中存在大量的配置,此外还内置一个习惯性的配置,让你无须手动进行配置)的理念让你的项目快速运行起来。使用Spring Boot很容易创建一个独立运行(运行jar,内嵌Servlet容器)、准生产级别的基于Spring框架的项目,使用Spring Boot你可以不用或者只需要很少的Spring配置。
Spring Boot核心功能
1、独立运行的Spring项目
Spring Boot可以以jar包的形式独立运行,运行一个Spring Boot项目只需通过java -jar xx.jar 来运行。
2、内嵌Servlet容器
Spring Boot 可以选择内嵌Tomcat、Jetty或者Undertow,这样我们无序以war包形式部署项目。
3、提供starter简化Maven配置
Spring提供一系列的start pom 来简化Maven的依赖加载,例如在Maven里面加上这个,会自动加入如下图所示额依赖包。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
</parent>
4、自动配置Spring
Spring Boot 会根据在类路径中的jar包、类,尾jar包里的类自动配置Bean,这样会极大地减少我们要使用的配置。
5、准生产的应用监控。
6、无代码生成和XML配置
Spring Boot的神奇之处不是借助于代码生成来实现的,而是通过条件注解来实现的,这是Spring 4.x提供的新特性.
Spring4.x提倡使用Java配置和注解配置组合,而Sring Boot 不需要任何XML配置即可实现Spring的所有配置。
3、Spring的优点
优点:
1.快速构建项目
2.对主流开发框架的无配置集成
3.项目可独立运行,无序外部依赖Servlet
4.提供运行时的应用监控
5.极大的提高了开发、部署效率
6.与云计算天然集成
4、入门案例
第一步:创建工程和导入依赖
pom.xml 如下所示:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>