首页 > 代码库 > 第一个Spring Boot应用

第一个Spring Boot应用

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。----以上来自百度百科。

简单来说,它的一个特点是:习惯大于约定。Spring Boot提倡基于Java的配置,注解将会代替很多的配置文件。以下使用Maven为例,开发第一个Spring Boot应用。

1,环境需求

Apache Maven 3.2或更高版本

Java推荐使用较高版本(目前推荐使用Java 8,最低支持Java 6)

Servlet容器,本次使用Tomcat

IDE或其他工具

2,相关文件

pom.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 4     <modelVersion>4.0.0</modelVersion>
 5 
 6     <groupId>com.example</groupId>
 7     <artifactId>myproject</artifactId>
 8     <version>0.0.1-SNAPSHOT</version>
 9 
10     <!-- Inherit defaults from Spring Boot -->
11     <parent>
12         <groupId>org.springframework.boot</groupId>
13         <artifactId>spring-boot-starter-parent</artifactId>
14         <version>1.4.0.BUILD-SNAPSHOT</version>
15     </parent>
16 
17     <!-- Add typical dependencies for a web application -->
18     <dependencies>
19         <dependency>
20             <groupId>org.springframework.boot</groupId>
21             <artifactId>spring-boot-starter-web</artifactId>
22         </dependency>
23     </dependencies>
24 
25     <!-- Package as an executable jar -->
26     <build>
27         <plugins>
28             <plugin>
29                 <groupId>org.springframework.boot</groupId>
30                 <artifactId>spring-boot-maven-plugin</artifactId>
31             </plugin>
32         </plugins>
33     </build>
34 </project>

src/main/java/Example.java

 1 import org.springframework.boot.*;
 2 import org.springframework.boot.autoconfigure.*;
 3 import org.springframework.stereotype.*;
 4 import org.springframework.web.bind.annotation.*;
 5 
 6 @RestController
 7 @EnableAutoConfiguration
 8 public class Example {
 9 
10     @RequestMapping("/")
11     String home() {
12         return "Hello World!";
13     }
14 
15     public static void main(String[] args) throws Exception {
16         SpringApplication.run(Example.class, args);
17     }
18 
19 }

尽管代码不多,但这已经足够Spring Boot猜测你的想法并构建这个项目了。然后部署到Tomcat可以正常访问,Spring Boot的第一个应用完成!

3,代码笔记

(1)@SpringBootApplication注解等价于以默认属性使用@Configuration,@EnableAutoConfiguration和@ComponentScan。

(2)@EnableAutoConfiguration,这个注解告诉Spring Boot根据添加的jar依赖猜测你想如何配置Spring。

(3)@Configuration和@Bean同样可以用在普通的spring项目中,而不是Spring Boot特有的,在spring用的时候注意加上扫包配置

(4)通常将应用的main类放到其他类所在包的顶层(root package),并将@EnableAutoConfiguration注解到main类上,这样就隐式地定义了一个基础的包搜索路径(search package),以搜索某些特定的注解实体(比如@Service,@Component等) 。采用root package方式,就可以使用@ComponentScan注解而不需要指定basePackage属性。

 
参考文档:Spring Boot参考指南

第一个Spring Boot应用