黑馬_13 Spring Boot:01.spring boot 介紹&&02.spring boot 入門

13 Spring Boot:html

01.spring boot 介紹&&02.spring boot 入門java

04.spring boot 配置文件web

  

 SpringBoot基礎 


 1.1 原有Spring優缺點分析 

Spring爲企業級Java開發提供了一種相對簡單的方法,經過依賴注入和麪向切面編程,用簡單的Java對象(Plain Old Java Object,POJO)實現了EJB的功能。 spring

Spring的缺點分析 編程

雖然Spring的組件代碼是輕量級的,但它的配置倒是重量級的。一開始,Spring用XML配置,並且是不少XML配置。segmentfault

Spring 2.5引入了基於註解的組件掃描,這消除了大量針對應用程序自身組件的顯式XML配置。tomcat

Spring 3.0引入了基於Java的全註解配置,這是一種類型安全的可重構配置方式,能夠代替XML。 安全

 除此以外,項目的依賴管理也是一件耗時耗力的事情。在環境搭建時,須要分析要導入哪些庫的座標,並且還須要分析導入與之有依賴關係的其餘庫的座標,一旦選錯了依賴的版本,隨之而來的jar包衝突不兼容問題就會嚴重阻礙項目的開發進度。服務器


1.2 SpringBoot的概述

SpringBoot對上述Spring的缺點進行的改善和優化,基於約定優於配置的思想,可讓開發人員沒必要在配置與邏輯業務之間進行思惟的切換,全身心的投入到邏輯業務的代碼編寫中,從而大大提升了開發的效率。app

 

 

SpringBoot的核心功能

  • 起步依賴

簡單的說,起步依賴就是是一個Maven項目對象模型(Project Object ModelPOM

  • 自動配置

Spring Boot的自動配置是一個運行時(更準確地說,是應用程序啓動時)的過程,考慮了衆多因素,才決定
Spring配置應該用哪一個,不應用哪一個。該過程是Spring自動完成的。

注意:起步依賴和自動配置的原理剖析會在第三章《SpringBoot原理分析》進行詳細講解

 


 

 2、SpringBoot快速入門 

  1.1 使用idea工具建立一個maven工程 

 

  該工程爲普通的java工程便可。

  

  1.2 添加SpringBoot的起步依賴 

  SpringBoot要求,項目要繼承SpringBoot的起步依賴spring-boot-starter-parent
  pom.xml

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.5.RELEASE</version>
    </parent>

 

 SpringBoot要集成SpringMVC進行Controller的開發,因此項目要導入web的啓動依賴

 

        <!--SpringBoot要集成SpringMVC,因此項目要導入web的啓動依賴-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

 

1.3 編寫SpringBoot引導類

 

package cn.bjut;

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

//註解聲明這是一個SpringBoot引導類
@SpringBootApplication
public class MySpringBootApplication {
    //main主方法是java程序的入口
    public static void main(String[] args) {
        //run方法 表示運行SpringBoot引導類
        //run參數就是SpringBoot引導類的字節碼對象
        SpringApplication.run(MySpringBootApplication.class);
    }
}

 

 Spring Boot 內置了tomcat服務器,啓動後自動調用。

 2019-09-27 11:21:53.305  INFO 2956 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
 

 1.4 編寫一個視圖Web層的 Controller類測試一下 

package cn.bjut.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller  //springIOC注入bean註解
public class QuickController {
    //頁面可能出現亂碼。所以在註解中咱們能夠手動修改編碼格式
    @RequestMapping(value = "/quick",produces="text/html;charset=utf-8")
    @ResponseBody  //做用是將方法的返回值以特定的格式寫入到response的body區域,進而將數據返回給客戶端
    public String quick(){
        return "hello Spring Boot";
    }
}

 

 09-SpringBoot工程的熱部署

 咱們在開發中反覆修改類、頁面等資源,每次修改後都是須要從新啓動才生效,這樣每次啓動都很麻煩,浪費了大量的時間,咱們能夠在修改代碼後不重啓就能生效,在 pom.xml 中添加以下配置就能夠實現這樣的功能,咱們稱之爲熱部署。

 

 

 

 

<!--SpringBoot熱部署配置-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
</dependency>

 而後 Shift+Ctrl+Alt+/,選擇Registry
 

 


10-IDEA快速建立SpringBoot工程

 

 

 

 

 

  

package cn.bjut.controller;


import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

@RestController    //功能上 = @Controller+@ResponseBody
//Controller
public class QuickController {
    @RequestMapping(value = "quick")
    //@ResponseBody
    public String TestSpringBootMethod(){
        return "IDEA快速使用spring boot項目成功";
    }
}

 

  

 

=======================

參考資料: 

Spring Boot【快速入門】

Springboot 版本+ jdk 版本 

Spring Cloud與Spring Boot版本匹配關係

記錄spring-boot 1.5.9升級至2.0.1的那些坑

========================

end  

相關文章
相關標籤/搜索