一、简化配置
一个Spring Boot应用程序可以快速启动,并且它会自动配置大多数项目所需的依赖。您无需手动配置Spring的许多方面,Spring Boot会自动进行配置。在使用Spring Boot过程中,使用约定大于配置的理念,Spring Boot随意推广一种求同存异的规范,从而使得开发者可以更加专注于业务逻辑的实现。比如,不用在配置类中显示指定 @ComponentScan,Spring Boot就会自动扫描项目的所有 @Entity、@Repository、@Service和 @Controller,避免了编写冗长的XML配置文件。
@SpringBootApplication
public class SpringBootDemoApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBootDemoApplication .class,args);
}
}
二、快速开发
Spring Boot提供了一种快速的开发方式:使用嵌入式Web服务器(Tomcat、Jetty或Undertow),您可以使用Spring Boot快速开发Web应用程序。通过应用程序上下文中的自动配置和自动发现机制,Spring Boot可以简化大量的基础设置和封装。比如,只需要简单的两行代码即可搭建一个Web服务:
@RestController
@EnableAutoConfiguration
public class HelloWorldController {
@RequestMapping("/")
String home() {
return "Hello World!";
}
public static void main(String[] args) throws Exception {
SpringApplication.run(HelloWorldController.class, args);
}
}
三、监控管理
Spring Boot包含许多管理员和监视工具,可帮助您通过RESTful API监视和管理Spring Boot应用程序,例如:Spring Boot Actuator。Spring Boot Actuator提供了有关您的应用程序运行状况的各种信息,包括Java虚拟机统计信息、线程情况、内存用量、已经在应用程序上下文注册的Spring bean等等。
org.springframework.boot
spring-boot-starter-actuator
四、生产就绪型
Spring Boot兼容大多数的云平台,可以使生产环境下的部署变得简单和快速。Spring Boot包含了一套丰富的端点和健康指标,可用于监视和管理应用程序。
management.endpoint.shutdown.enabled=true
五、快速集成
Spring Boot可以快速集成大量流行的框架和库,包括Spring框架、JPA、MongoDB、Redis、Hadoop等,几乎所有主流技术都可以以依赖包的形式集成。Spring Boot不仅简化了项目的搭建,而且也极大地降低了项目整合的难度和门槛。
org.springframework.boot
spring-boot-starter-data-jpa
com.fasterxml.jackson.core
jackson-databind
2.9.7