随着使用Spring进行开发的个人和企业越来越多,Spring从一个单一简洁的框架变成了一个大而全的开源软件,最直观的变化就是Spring需要引入的配置也越来越多。配置繁琐,容易出错,让人无比头疼,简化Spring配置简直可以说是民心所向。
Spring Boot是由Pivotal团队提供的一个基于Java的全新的开源框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。如今,Spring Boot逐渐成为快速应用开发领域(rapid application development)的领导者。
本文将使用Eclipse和Maven,实现两步快速构建一个Spring Boot项目。
运行环境:
JDK 1.8
Maven 3.5
Spring Boot 2.1.0
打开连接start.spring.io/ ,选择项目类型(Maven Project/Gradle Project),语言类型(Java/Kotlin/Groovy),Spring Boot的版本;再填入一些工程的基本信息。Group指的是工作小组或者公司的名字,对应着工程文件下面的包名;Artifact指的是工程的名字,人家Spring Boot把一个项目当做一项手工艺品,这种工匠精神,佩服。然后点击下方“Generate Project”按钮即可把新建的工程压缩包下载到本地。
导入步骤;File - >Import -> Existing Maven Projects -> Next ->选择解压以后的文件夹 - >Finish。
工程目录:
DemoApplication.java是Spring Boot的启动类:
package com.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } } 复制代码
其核心是@SpringBootApplication注解,@SpringBootApplication告诉Spring Boot框架,这是Spring Boot服务的入口点。
@SpringBootApplication = (默认属性)@Configuration + @EnableAutoConfiguration + @ComponentScan。
@Configuration:创建一个简单的Spring配置类,可以用来替代相应的xml配置文件。
@EnableAutoConfiguration: 自动配置Spring的上下文。
@ComponentScan:自动扫描指定包下的全部标有@Component的类,并注册成bean,包括@Component下的子注解@Service,@Repository,@Controller。
接着可以直接进行开发,编写一个Controller类。
package com.example.demo.controller; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @SpringBootApplication @RequestMapping("/springboot") public class HelloController { @RequestMapping("/hello") public String hello() { return "Hello Spring Boot"; } } 复制代码
Spring Boot项目不需要单独部署到Tomcat或者Jetty中才能启动,通过Spring Boot启动器,SpringBoot会自动构建一个web容器,并将项目部署到其中。DemoApplication.java右键 -> Run As - > Spring Boot App,工程就启动了。
使用Postman GET方式请求 http://localhost:8080/springboot/hello ,可以看到返回了“Hello Spring Boot”。
由于Spring Boot的“约定优于配置”让配置更简单,可以非常方便、快速搭建项目!