1. 程式人生 > >SpringBoot入門 - 簡單的HelloWorld

SpringBoot入門 - 簡單的HelloWorld

可參考官網資料:https://spring.io/ 和 http://spring.io/projects/spring-boot 

SpringBoot 是什麼??

Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是用來簡化Spring應用的初始搭建以及開發過程。 -使用springboot以後,搭建一個spring應用和開發變得很簡單.

該框架使用了特定的方式(繼承starter,約定優先於配置)來進行配置,從而使開發人員不再需要定義樣板化的配置。通過這種方式,Boot致力於在蓬勃發展的快速應用開發領域(rapid application development)成為領導者。

Spring Boot並不是一個框架,從根本上將,它就是一些maven庫的集合,maven或者gradle專案匯入相應依賴即可使用Spring Boot,而且無需自行管理這些庫的版本。

Springboot就是一些寫好了maven的模組,我們在使用SPring就不需以傳統的方式來用,只需要以maven匯入對應的springboot模組,就能完成一大堆操作。簡單的說,它使用maven的方式對Spring應用開發進行進一步封裝和簡化。

特點:

1. 建立獨立的Spring應用程式
2. 嵌入的Tomcat,無需部署WAR檔案
3. 簡化Maven配置
4. 自動配置Spring
5. 提供生產就緒型功能,如指標,健康檢查和外部配置
6. 絕對沒有程式碼生成並且對XML也沒有配置要求

簡單而言:即Spring Boot使編碼更簡單,使配置更簡單,使部署更簡單,使監控更簡單。

Springboot就是為了簡化spring應用搭建,開發,部署,監控的開發工具。

Spring Boot提供哪些功能?

無需手動管理依賴jar包的版本

Spring boot通過spring boot starter專案管理其提供的所有依賴的版本,當升級spring boot時,這些依賴的版本也會隨之升級,個人無需指定版本號
但是也可以自定義版本號覆蓋springboot的預設值。每個版本的boot都有對應的base spring version,不建議明確地指定spring版本。

下面是Spring Boot在 org.springframework.boot 組下提供的一些starters:

簡言之 springboot就是簡化spring應用開發,對web,service,dao層都支援。

SpringBoot入門 - helloworld

開發環境:jdk1.8              專案管理工具:maven            開發工具:eclipse/idea

1.建立一個普通的maven專案 

溫馨小提示:如果是單獨的一個專案,建立Spring Initializr,它直接就是一個springboot專案,會幫我們自動配置很多下面所需的依賴

2.①匯入SpringBoot依賴

<!-- SpringBoot所需依賴 -->
<parent>
        <groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>2.0.5.RELEASE</version>
</parent>

在這裡我是module中使用 

因此我是在parent的pom中匯入

<!-- dependencyManagement-解決單繼承問題 -->
<dependencyManagement>
     <dependencies>
         <!--springboot版本管理--><!-- SpringBoot所需依賴 -->
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-dependencies</artifactId>
             <version>2.0.5.RELEASE</version>
             <type>pom</type>
             <scope>import</scope>
         </dependency>
     </dependencies>
</dependencyManagement>

②新增spring-boot-starter-web依賴

<!--spring-boot-starter-web依賴-->
<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
</dependency>

3.測試

①新建啟動類

傳統開發的springweb專案:
1.啟動tomcat
2.根據web.xml中配置資訊初始化一個spring容器(applicationContext)
3.做一些常規配置後根據掃描包路徑掃描一些bean(mapper,service,controller)


啟動springboot應用:
1.啟動一個內建tomcat
2.初始化一個spring容器
3.自動配置(SpringMVC),
  掃描加了@SpringBootApplication類的當前包以及子子孫孫裡面所有spring註解(@Repository,@service,@Controller),
  並且將掃描到的類納入Spring管理
--> 最終就是幫我們簡化了很多操作

@SpringBootApplication//標識該應用為springboot的應用
public class HelloApplication {
    public static void main(String[] args) {
        SpringApplication.run(HelloApplication.class); //啟動springboot應用
    }
}

- 執行啟動

②編寫controller類

@Controller
public class HelloController {
    @RequestMapping("/hello")
    @ResponseBody //加上 @ResponseBody 後返回結果不會被解析為跳轉路徑,而是直接寫入 HTTP response body 中。 比如非同步獲取 json 資料,加上 @ResponseBody 後,會直接返回 json 資料
    public String sayHello(){
        return "HelloWorld";
    }
}

瀏覽器輸入訪問路徑測試:http://127.0.0.1:8080/hello

這樣一個簡單的入門就算完成了