1. 程式人生 > >【SpringBoot】2.快速搭建一個SpringBoot應用

【SpringBoot】2.快速搭建一個SpringBoot應用

上一篇部落格我們介紹了SpringBoot的概念,這裡我們通過快速搭建一個SpringBoot應用來體驗SpringBoot的特色。

1.建立工程
首先我們開啟MyEclipse,建立一個Maven工程:

然後選擇建立模式,這裡我們選擇不需要骨架:

最後填寫專案相關引數:

專案建立之後工程目錄如下:

pom.xml檔案中有一些錯誤,我們先去配置它,在POM檔案中新增SpringBoot的依賴,配置如下:
<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>cn.com.springboot.web</groupId>
  <artifactId>spring-boot-test</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  
  <parent>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-parent</artifactId>
       <version>1.5.4.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.8</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>
       
       <dependency>  
	      <groupId>mysql</groupId>  
	      <artifactId>mysql-connector-java</artifactId>  
	   </dependency>  
   </dependencies>


   <build>
       <plugins>
           <plugin>
               <groupId>org.springframework.boot</groupId>
               <artifactId>spring-boot-maven-plugin</artifactId>
           </plugin>
       </plugins>
   </build>
</project>
我們將jre環境換為1.8(因為SpringBoot中很多依賴是需要jdk1.8版本支援的):


然後我們儲存pom.xml檔案,當編譯器載入更新完畢後,我們會在工程中看到maven依賴被成功載入進來:


此時我們開啟“Maven Dependencies”依賴的詳情,可以看到如下依賴被引入:

我們可以發現web常用的依賴都被引入進來了,就如前面概述中所說的,SpringBoot的核心依賴中包含了許多開發常用的jar包依賴。

我們要解釋的jar依賴有兩個:
(1)spring-boot-starter-parent
該依賴為Spring Boot的父級依賴,它用來提供相關的Maven預設依賴,引入該依賴之後,常用的包依賴可以省去version標籤。
想檢視Spring Boot提供了哪些jar包的依賴,可以去本地的maven倉庫的以下路徑:
xxx\repository\org\springframework\boot\spring-boot-dependencies\1.5.4.RELEASE\spring-boot-dependencies-1.5.1.RELEASE.pom
的pom檔案中檢視。若SpringBoot提供的依賴版本有些東西不是開發中需要的,可以選擇去宣告其他版本依賴覆蓋本依賴。 

(2)spring-boot-starter-web
此依賴為Spring Boot的”開箱即用“依賴模組之一,“開箱即用”的依賴基本都是以spring-boot-starter-xx作為命名的。關於開箱即用,
它會自動封裝所需功能的依賴,不需要做很多的配置和引入各種需要的依賴,也不會出現依賴版本不匹配的問題。 

然後我們建立使用者請求響應Controller層,用來響應一個RESTful風格的請求:

程式碼如下:
package cn.springboot.test.controller;

import java.util.HashMap;
import java.util.Map;

import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
//該註解等價於@
[email protected]
的結合,使用這個註解的類裡面的方法都以json格式輸出。 public class HelloController { private static Map<Integer,String> userMap = new HashMap<Integer,String>(); private void initUserMap(){ userMap.put(1, "張三");userMap.put(2, "李四"); userMap.put(3, "王五");userMap.put(4, "趙二"); } @RequestMapping("/hello/{id}") public String findById(@PathVariable Integer id) { initUserMap(); return "你好,使用者:" + userMap.get(id); } }

SpringBoot啟動有三種方式:
1. main方法啟動 
2. 使用maven命令 mvn spring-boot:run 在命令列啟動該應用 
3. Java -jar 命令啟動,需要先執行“mvn package”進行打包

我們這裡選項第一種方式。建立SpringBoot的一個核心啟動類:

程式碼如下:
package cn.springboot.test;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
//Sprnig Boot專案的核心註解,主要目的是開啟自動配置
public class SpringbootTestSimpleApplication {
	//該main方法作為專案啟動的入口
    public static void main(String[] args) {
        SpringApplication.run(SpringbootTestSimpleApplication.class, args);
    }
}

我們執行SpringbootTestSimpleApplication,待控制檯載入:

載入完畢後,我們在瀏覽器訪問剛剛寫的hello服務,訪問id為1和2的使用者資訊。

當路徑為"http://localhost:8080/hello/1"時,瀏覽器結果為:

當路徑為"http://localhost:8080/hello/2"時,瀏覽器結果為:


就這樣我們實現了一個簡單的SpringBoot服務,看起來十分的簡介和快速,這就是SpringBoot的強大之處。

下一篇文章會介紹SpringBoot為什麼會快速實現一個服務的構建和釋出。

相關推薦

SpringBoot2.快速搭建一個SpringBoot應用

上一篇部落格我們介紹了SpringBoot的概念,這裡我們通過快速搭建一個SpringBoot應用來體驗SpringBoot的特色。 1.建立工程 首先我們開啟MyEclipse,建立一個Maven工程: 然後選擇建立模式,這裡我們選擇不需要骨架: 最後填寫專案相關引數:

快速搭建一個SpringBoot入門專案

在官網建立專案 https://start.spring.io 下載到本地解壓 用idea開啟 編寫HelloWorld服務 @RestController public class HelloController { @RequestMapping("/hello")

1.SpringBoot之Helloword 快速搭建一個web專案

背景:   Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該框架使用了特定的方式來進行配置,從而使開發人員不再需要定義樣板化的配置。通過這種方式,Spring Boot致力於在蓬勃發展的快速應用開發

JavaEE學習筆記SpringMVC_01_快速搭建一個環境,簡介,常用方法

SpringMVC_01 A.快速搭建一個SpringMVC環境 1.搭建框架 <project xmlns="http://maven.apache.org/POM/4.0.0" xm

使用webmagic搭建一個簡單的爬蟲

class 直接 了解 pid 個數 粘貼 body 教程 相關配置 【轉】使用webmagic搭建一個簡單的爬蟲 剛剛接觸爬蟲,聽說webmagic很不錯,於是就了解了一下。 webmagic的是一個無須配置、便於二次開發的爬蟲框架,它提供簡單靈活的API,只需少量代碼

gulp用gulp搭建一個前端專案

一、安裝與建立 1.安裝node:https://nodejs.org/zh-cn/ 2.安裝gulp:npm install gulp -g 3.新建一個資料夾用來存放專案 4.在命令列進入建立的資料夾輸入 gulp init即可 5.新建一

實戰如何親手搭建一個分散式 IM(即時通訊) 系統

前言 老讀者應該還記得我之前分享過一篇《設計一個百萬級的訊息推送系統》;雖然我在文中有貼一些虛擬碼,依然有些朋友希望能直接分享一些可以執行的原始碼;這麼久了是時候把坑填上了。 目錄結構:  

SpringMVCIntellij Idea搭建一個完整的 spring mvc專案 (附帶ibatis的配置與使用)

Intellij Idea + spring + ibatis + tomcat + maven打造一個簡單的web專案 step 1. 使用idea + maven建立一個web專案 建立好後,發現main下面沒有java資料夾,這裡可以手動

SpringBoot手把手使用IDEA快速建立一個SpringBoot專案

微信公眾號: 關注可獲得更多幹貨。問題或建議,請公眾號留言; 關注小編微信公眾號獲取更多資源 手把手使用IDEA快速建立一個SpringBoot專案 目錄 1.New Project

快速搭建一個Quartz定時任務轉載,好文 ,值得收藏,親身試用 效果不錯 Quartz.NET 入門

Quartz.NET 入門   概述 Quartz.NET是一個開源的作業排程框架,非常適合在平時的工作中,定時輪詢資料庫同步,定時郵件通知,定時處理資料等。 Quartz.NET允許開發人員根據時間間隔(或天)來排程作業。它實現了作業和觸發器的多對多關係,還能把多

springboot2、Controller和引數

類上的配置 @RestController public class SpringdemoApplication { ... } 其中@RestController表示返回string或者json內容(即直接返回內容),而如果是@Controller則表示可以返回

區塊鏈1 HyperLedger快速搭建一個Fabric1.0環境 執行測試e2e_cli專案

1 Ubuntu環境搭建(win7 64位 + VMWare14 + Ubuntu16.04) 2 Docker安裝 首先sudo apt install curl 使用阿里提供的映象進行Docker的安裝,輸入curl -fsSL https://

ELK筆記ELK的安裝,快速搭建一個ELK日誌分析平臺

ELK 是 ElasticSearch、 LogStash、 Kibana 三個開源工具的簡稱,現在還包括 Beats,其分工如下: LogStash/Beats: 負責資料的收集與處理 ElasticSearch: 一個開源的分散式搜尋引擎,負責資料的儲存

springboot用idea建立一個簡易springboot專案

在idea中File->new->project選擇Spring Initializr (spring初始化程式)2.如果你用過maven name這個你應該認識了3.選擇spring元件,由於是web專案,先選擇webTemplateEngines 中有Free

玩轉 SpringBoot 2 快速搭建 | Spring Tool Suite篇

Spring Tool Suite (STS) 工具介紹 我個人比較推薦使用 Spring Tool Suite(STS),之所以推薦使用 Spring Tool Suite(STS) ,是因為它是 Spring官方 基於 Eclipse 開發的一款 IDEA。其目的是更好使用 Spring 。 如果你習慣使

快速構建一個 Springboot

pan -1 conf tomcat one feature 添加 自動配置 span 快速構建一個 Springboot 官網:http://projects.spring.io/spring-boot/ Spring Boot可以輕松創建可以“運行”的獨立的,生產級的

使用Springboot+Feign Clients快速搭建REST客戶端應用

本文翻譯:吳嘉俊,叩丁狼高階講師。    在本文中,我們會快速的使用Springboot,配合Feign搭建一個簡單的REST客戶端應用。通過本示例,讓大家對這兩個框架的配合有一個基本的瞭解。 Spring Boot 是一個Java的快速開發框架,用於

springboot如何在自己的springboot專案中引用別的springboot專案jar

正好今天碰到了,就在這裡總結下,習慣了將公用的專案打包成jar,然後當做工具類引入到自己專案中,直接呼叫,感覺甚是方便... 但有沒有發現,平時我們引用的大部分情況下是一個maven專案,然後打包好的jar也是maven專案的結構,所以我們可以正常的引用和使用,但現在已經是springboot的

手把手搭建一個springboot程式

簡介: 首先介紹一下springboot,Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該框架使用了特定的方式來進行配置,從而使開發人員不再需要定義樣板化的配置。通過這種方式,Spring Boot致力於在蓬勃發展的快速

AndroidAndroid快速入門教程(五——2)——logcat控制檯

文章目錄 一、logcat是什麼? 二、logcat有什麼用? 三、我該怎麼列印自己要的日誌內容 一、logcat是什麼? 一般情況可以在下圖所示位置可以找到logcat控制檯,如果找不到的,可以在Android studi