一、SpringBoot介绍
随着动态语言的流行(Ruby,Groovy,Scala,Node.js),Java的开发显得格外的笨重:繁多的配置,低下的开发效率,复杂的部署流程以及第三方技术集成难度大。
在上述环境下,SpringBoot应运而生。它使用“习惯由于配置”的理念让项目快速运行起来。使用SpringBoot很容易创建一个独立运行(运行jar,内嵌Servlet容器)准生产级别的基于Spring框架的项目,使用SpringBoot可以不用或只需要很少的Spring配置。
二、SpringBoot核心特点
1.可以以jar包的形式独立运行,运行一个SpringBoot项目只需通过 java -jar xx.jar来运行
2.内嵌Servlet容器,SpringBoot可以选择Tomcat,Jetty或者Undertow,这样我们无须以war包形式部署项目
3.简化Maven配置,SpringBoot提供了一系列的starter pom 来简化Maven的依赖加载
4.SpringBoot会根据在类路径中的jar包,类,为jar包中的类自动配置Bean,这样就极大的减少了我们要使用的配置
5.SpringBoot提供了基于http,ssh,telnet对运行时的项目进行监控
6.不借助于代码生成来实现,而是通过条件注解来实现,这也是Spring4.x的新特性,不需要任何的xml配置即可实现Spring的所有配置
三、搭建第一个SpringBoot入门程序
1.创建一个maven工程
2.在工程的pom.xml中加入对应的依赖
<parent>
<groupId> org.springframework.boot </groupId>
<artifactId> spring-boot-starter-parent </artifactId>
<version> 2.1.12.RELEASE </version>
</parent>
<dependencies>
<dependency>
<groupId> org.springframework.boot </groupId>
<artifactId> spring-boot-starter-web </artifactId>
</dependency>
</dependencies>
3.编写controller层
package springboot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@EnableAutoConfiguration
public class T1 {
@RequestMapping("springboot")
public String hh() {
return "My Springboot";
}
public static void main(String[] args) {
// TODO Auto-generated method stub
SpringApplication.run(T1.class, args);
}
}
4.执行程序
因为SpringBoot是以jar包的形式运行,所以我们要编写main函数来运行
四、@EnableAutoConfiguration注解
@EnableAutoConfiguration:启用自动配置,该注解会使SpringBoot根据项目依赖的jar包自动配置项目的配置项。例如:我们添加了spring-boot-starter-web的依赖,项目中也就会引入SpringMVC的依赖,Spring Boot就会自动配置Tomcat和SpringMVC。
关闭自动配置:@EnableAutoConfiguration(exclude={RedisAutoConfiguration.class})