一、基本介绍
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。它主要用于配置Spring应用,它消除了大量的样板代码,并提供了一些非功能性的工具,如内嵌服务器、安全管理、健康检查等。
二、主要优点
1、快速开发:提供快速集成的方式,可以在几分钟内创建一个独立的Spring应用。
2、无需部署WAR文件:可以打包为JAR文件,通过Java -jar运行。
3、内嵌服务器:内嵌Tomcat、Jetty或Undertow,无需部署WAR文件。
4、自动配置:基于Spring应用的依赖,自动配置Spring Beans。
5、起步依赖:提供了一系列的起步依赖,简化了版本依赖管理。
6、命令行工具:Spring Boot CLI提供命令行工具。
三、创建应用
1、创建项目:可以使用Spring Initializr(https://start.spring.io/)来快速生成项目结构。
2、添加依赖:根据项目需求添加相应的Spring Boot起步依赖(Starters)。
3、编写主应用程序类:使用@SpringBootApplication
注解来标记主类,它包含了@Configuration
, @EnableAutoConfiguration
, 和 @ComponentScan
。
4、编写业务逻辑:创建服务类、控制器类等,根据需要使用Spring的各种功能。
5、配置属性:使用application.properties
或application.yml
文件来配置应用的属性。
6、运行应用:使用Spring Boot的内嵌Tomcat服务器来运行应用。
四、简单示例
下面是一个简单的Spring Boot应用示例:
1. Maven依赖 (pom.xml
):
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
2. 主应用程序类 (Application.java
):
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
3. REST控制器 (HelloController.java
):
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello() {
return "Hello, Spring Boot!";
}
}
4. 配置文件 (application.properties
):
# 可以在这里配置数据库连接、服务器端口等属性
server.port=8080
5. 运行应用: 在IDE中,可以直接运行Application
类的main
方法来启动应用。应用启动后,可以通过浏览器访问http://localhost:8080/hello
来看到返回的"Hello, Spring Boot!"消息。