簡介:
-
Spring Boot是Spring框架一個子項目,用於創建Spring4.0 項目,它可以自動配置Spring各種組件,並不依賴代碼生成和XML配置文件。
優點:
- 輕鬆創建獨立的Spring應用程序
- 內嵌Tomcat、jetty等web容器,不需要部署WAR文件
- 提供一系列的starter,簡化的Maven配置,不需要添加太多依賴
入門程序:
- 1.創建maven項目
- 2.在pom文件中配置依賴
-
<!--springboot父依賴:spring-boot-starter-parent--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> </parent> <dependencies> <!-- spring-boot-starter-web--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
- 3.寫一個控制器,一個main方法,運行程序
- @Controller:一般對應頁面
- @RestController:對應數據
-
@RestController @EnableAutoConfiguration @RequestMapping("hello") public class HelloController { @RequestMapping("/hello")//映射路徑 @ResponseBody//響應體 public String hello(){ return "spring boot"; } public static void main(String[] args) { SpringApplication.run(HelloController.class, args); } }
- 4.在瀏覽器中訪問http://localhost:8080/hello/hello
SpringBoot的啓動方式:採用第二種
第一種:入門描述,寫EnableAutoConfiguration註解並在main方法中使用SpringApplication啓動程序(單個controller)
public static void main(String[] args) {
SpringApplication.run(要運行的控制器.class, args);
}
第二種:創建一個App類,在App類中配置EnableAutoConfiguration和組件掃描ComponentScan,然後在main方法中使用SpringApplication啓動程序 (多個congtroller)
@ComponentScan("com.zjc.web.controller") //掃描路徑
@EnableAutoConfiguration
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class,args);
}
}
spring-boot-starter-web
- 包含SpringMVC框架、SLF4J、Jackson、Hibernate Validator 和 Tomcat 等依賴
- Spring 推薦的 Web 應用中使用的開源庫的組合
EnableAutoConfiguration
- 註解的作用:讓 Spring Boot 根據應用所聲明的依賴來對Spring框架進行自動配置
Spring Boot依賴
spring-boot-starter |
核心 POM,包含自動配置支持、日誌庫和對 YAML 配置文件的支持。 |
spring-boot-starter-web |
支持 Web 應用開發,包含 Tomcat 和 spring-mvc。 |
spring-boot-starter-amqp |
通過 spring-rabbit 支持 AMQP 消息隊列 |
spring-boot-starter-aop |
包含 spring-aop 和 AspectJ 來支持面向切面編程(AOP)。 |
spring-boot-starter-batch |
支持 Spring Batch,包含 HSQLDB。 |
spring-boot-starter-data-jpa |
包含 spring-data-jpa、spring-orm 和 Hibernate 來支持 JPA。 |
spring-boot-starter-data-mongodb |
包含 spring-data-mongodb 來支持 MongoDB。 |
spring-boot-starter-data-rest |
通過 spring-data-rest-webmvc 支持以 REST 方式暴露 Spring Data 倉庫。 |
spring-boot-starter-jdbc |
支持使用 JDBC 訪問數據庫 |
spring-boot-starter-security |
包含 spring-security。 |
spring-boot-starter-test |
包含常用的測試所需的依賴,如 JUnit、Hamcrest、Mockito 和 spring-test 等。 |
spring-boot-starter-velocity |
支持使用 Velocity 作爲模板引擎。 |
spring-boot-starter-websocket |
支持使用 Tomcat 開發 WebSocket 應用。 |
spring-boot-starter-ws |
支持 Spring Web Services |
spring-boot-starter-actuator |
添加適用於生產環境的功能,如性能指標和監測等功能。 |
spring-boot-starter-remote-shell |
添加遠程 SSH 支持 |
spring-boot-starter-tomcat |
使用 Spring Boot 默認的 Tomcat 作爲應用服務器。 |
spring-boot-starter-jetty |
使用 Jetty 而不是默認的 Tomcat 作爲應用服務器。 |
spring-boot-starter-log4j |
添加 Log4j 的支持 |
spring-boot-starter-logging |
使用 Spring Boot 默認的日誌框架 Logback |