Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
Spring boot的特点
1. 创建独立的Spring应用程序
2. 嵌入的Tomcat,无需部署WAR文件
3. 简化Maven配置
4. 自动配置Spring
5. 提供生产就绪型功能,如指标,健康检查和外部配置
6. 绝对没有代码生成和对XML没有要求配置
Spring boot的优点
spring boot 可以支持你快速的开发出 restful 风格的微服务架构
自动化确实方便,做微服务再合适不过了,单一jar包部署和管理都非常方便。只要系统架构设计合理,大型项目也能用,加上nginx负载均衡,轻松实现横向扩展
spring boot 要解决的问题, 精简配置是一方面, 另外一方面是如何方便的让spring生态圈和其他工具链整合(比如redis, email, elasticsearch)
Spring boot的使用
1.pom文件中引入:
1 <properties>
2 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
3 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
4 <java.version>1.8</java.version>
5 </properties>
6 <dependencies>
7 <!--支持 Web 应用开发,包含 Tomcat 和 spring-mvc。 -->
8 <dependency>
9 <groupId>org.springframework.boot</groupId>
10 <artifactId>spring-boot-starter-web</artifactId>
11 </dependency>
12 <dependency>
13 <groupId>org.springframework.boot</groupId>
14 <artifactId>spring-boot-starter-test</artifactId>
15 <scope>test</scope>
16 </dependency>
17 <!--模板引擎 -->
18 <dependency>
19 <groupId>org.springframework.boot</groupId>
20 <artifactId>spring-boot-starter-freemarker</artifactId>
21 </dependency>
22 <!--Json Support -->
23 <dependency>
24 <groupId>com.alibaba</groupId>
25 <artifactId>fastjson</artifactId>
26 <version>1.1.43</version>
27 </dependency>
28 <!--springboot中修改完文件后自动reload的插件,修改完文件Ctrl + F9 Make一下就可以 -->
29 <dependency>
30 <groupId>org.springframework</groupId>
31 <artifactId>springloaded</artifactId>
32 <version>1.2.3.RELEASE</version>
33 </dependency>
34 <!--springboot中修改完文件后自动reload的插件 end -->
35 </dependencies>
36 <build>
37 <plugins>
38 <plugin>
39 <groupId>org.springframework.boot</groupId>
40 <artifactId>spring-boot-maven-plugin</artifactId>
41 <dependencies>
42 <dependency>
43 <groupId>org.springframework</groupId>
44 <artifactId>springloaded</artifactId>
45 <version>1.2.3.RELEASE</version>
46 </dependency>
47 </dependencies>
48 </plugin>
49 </plugins>
50 </build>
51 <!--配置远程仓库地址 -->
52 <repositories>
53 <repository>
54 <id>spring-milestone</id>
55 <url>https://repo.spring.io/libs-release</url>
56 </repository>
57 </repositories>
58 <!--配置远程仓库地址 -->
59 <pluginRepositories>
60 </pluginRepositories>
pom文件
2.启动类:
@SpringBootApplication
public class SpringBootApplicationRun {
public static void main(String[] args) {
SpringApplication.run(SpringBootApplicationRun.class, args);
}
}
3.controller
@RestController
public class TestController {
@RequestMapping("/")
public String method(){
return "hello world";
}
}
4.启动main方法,在浏览器上输入:http://localhost:8080/
输出:hello world