Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該框架使用了特定的方式來進行配置,從而使開發人員再也不須要定義樣板化的配置。經過這種方式,Spring Boot致力於在蓬勃發展的快速應用開發領域(rapid application development)成爲領導者。java
咱們之前使用Spring框架的時候,須要首先在pom文件中增長對相關的的依賴,而後新建Spring相關的xml文件,並且每每那些xml文件還不會少。而後繼續使用tomcat或者jetty做爲容器來運行這個工程。基本上每次建立一個新的項目都是這麼一個流程,而咱們有時候僅僅想快速的建立一個Spring web工程來測試一些東西,或者是但願能節省時間。web
如今咱們使用Spring Boot就能夠快速的作到這些了。redis
【Spring Boot應用啓動器基本的一共有44種】
1)spring-boot-starter
這是Spring Boot的核心啓動器,包含了自動配置、日誌和YAML。
2)spring-boot-starter-actuator
幫助監控和管理應用。
3)spring-boot-starter-amqp
經過spring-rabbit來支持AMQP協議(Advanced Message Queuing Protocol)。
4)spring-boot-starter-aop
支持面向方面的編程即AOP,包括spring-aop和AspectJ。
5)spring-boot-starter-ar temis
經過Apache Artemis支持JMS的API(Java Message Service API)。
6)spring-boot-starter-batch
支持Spring Batch,包括HSQLDB數據庫。
7)spring-boot-starter-cache
支持Spring的Cache抽象。
8)spring-boot-starter-cloud-connectors
支持Spring Cloud Connectors,簡化了在像Cloud Foundry或Heroku這樣的雲平臺上鍊接服務。
9)spring-boot-starter-data-elasticsearch
支持ElasticSearch搜索和分析引擎,包括spring-data-elasticsearch。
10)spring-boot-starter-data-gemfire
支持GemFire分佈式數據存儲,包括spring-data-gemfire。
11)spring-boot-starter-data-jpa
支持JPA(Java Persistence API),包括spring-data-jpa、spring-orm、hibernate。
12)spring-boot-starter-data-MongoDB
支持MongoDB數據,包括spring-data-mongodb。
13)spring-boot-starter-data-rest
經過spring-data-rest-webmvc,支持經過REST暴露Spring Data數據倉庫。
14)spring-boot-starter-data-solr
支持Apache Solr搜索平臺,包括spring-data-solr。
15)spring-boot-starter-freemarker
支持FreeMarker模板引擎。
16)spring-boot-starter-groovy-templates
支持Groovy模板引擎。
17)spring-boot-starter-hateoas
經過spring-hateoas支持基於HATEOAS的RESTful Web服務。
18)spring-boot-starter-hornetq
經過HornetQ支持JMS。
19)spring-boot-starter-integration
支持通用的spring-integration模塊。
20)spring-boot-starter-jdbc
支持JDBC數據庫。
21)spring-boot-starter-jersey
支持Jersey RESTful Web服務框架。
22)spring-boot-starter-jta-atomikos
經過Atomikos支持JTA分佈式事務處理。
23)spring-boot-starter-jta-bitronix
經過Bitronix支持JTA分佈式事務處理。
24)spring-boot-starter-mail
支持javax.mail模塊。
25)spring-boot-starter-mobile
支持spring-mobile。
26)spring-boot-starter-mustache
支持Mustache模板引擎。
27)spring-boot-starter-Redis
支持Redis鍵值存儲數據庫,包括spring-redis。
28)spring-boot-starter-security
支持spring-security。
29)spring-boot-starter-social-facebook
支持spring-social-facebook
30)spring-boot-starter-social-linkedin
支持pring-social-linkedin
31)spring-boot-starter-social-twitter
支持pring-social-twitter
32)spring-boot-starter-test
支持常規的測試依賴,包括JUnit、Hamcrest、Mockito以及spring-test模塊。
33)spring-boot-starter-thymeleaf
支持Thymeleaf模板引擎,包括與Spring的集成。
34)spring-boot-starter-velocity
支持Velocity模板引擎。
35)spring-boot-starter-web
S支持全棧式Web開發,包括Tomcat和spring-webmvc。
36)spring-boot-starter-websocket
支持WebSocket開發。
37)spring-boot-starter-ws
支持Spring Web Services。
Spring Boot應用啓動器面向生產環境的還有2種,具體以下:
1)spring-boot-starter-actuator
增長了面向產品上線相關的功能,好比測量和監控。
2)spring-boot-starter-remote-shell
增長了遠程ssh shell的支持。
最後,Spring Boot應用啓動器還有一些替換技術的啓動器,具體以下:
1)spring-boot-starter-jetty
引入了Jetty HTTP引擎(用於替換Tomcat)。
2)spring-boot-starter-log4j
支持Log4J日誌框架。
3)spring-boot-starter-logging
引入了Spring Boot默認的日誌框架Logback。
4)spring-boot-starter-tomcat
引入了Spring Boot默認的HTTP引擎Tomcat。
5)spring-boot-starter-undertow
引入了Undertow HTTP引擎(用於替換Tomcat)。spring
1. 咱們建立一個Maven工程,工程名字爲springboot,而後修改pom.xml文件:mongodb
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>net.mingyang</groupId> <artifactId>spring-boot-helloworld</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>spring-boot-helloworld</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.1.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.7</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
2. 新建一個Controller來接受處理咱們的請求:
@SpringBootApplication @Controller public class SimpleController { @RequestMapping(value ="/", method = RequestMethod.GET) @ResponseBody public String hello(){ return "hello world"; } public static void main(String[] args) { SpringApplication.run(SimpleController.class, args); } }
3. 執行SimleController中的main()方法:
4.查看日誌能夠發現默認使用的是tomcat,端口綁定在8080,訪問:http://localhost:8080/
注意:
1.注意pom文件中Java的版本
<java.version>1.7</java.version>
2.注意@RequestMapping的使用,和spring中用法相同
@RequestMapping(value ="/hello", method = RequestMethod.GET)則訪問:http://localhost:8080/hello能夠繼續關注的接下去的博客,會繼續介紹springboot其餘的使用。