Spring學習之路-SpringBoot簡單入門


  簡單講SpringBoot是對spring和springMVC的二次封裝和整合,新添加了一些注解和功能,不算是一個新框架。

  學習來源是官方文檔,雖然很詳細,但是太墨跡了…

  地址:https://docs.spring.io/spring-boot/docs/1.5.8.RELEASE/reference/htmlsingle/#boot-documentation

  

  我是配合maven來學習的,所以首先是pom.xml的配置,根據官方文檔如下:

pom.xml

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.8.RELEASE</version>
  </parent>
  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-devtools</artifactId>
      <optional>true</optional>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>

  稍微解釋下:

  spring-boot-starter-web會自動引入一些web相關的spring框架,包含tomcat、springframework等等

  spring-boot-devtools相當於webpack中的熱重載,可以快速更新資源並在應用中得到響應。

  parent、plugins這兩個忘了,反正對我這種菜鳥來說,引入就沒錯

 

  接下來是啟動一個簡單的HelloWorld程序,不按照官網的example來了,直接上最終版:

@SpringBootApplication
public class Application{
    public static void main(String[] args) {
        SpringApplication app = new SpringApplication(Application.class);
        app.run(args);
    }
}

  執行該文件后,會啟動一個服務器,默認端口8080,打開后會顯示一個默認的error頁面,如圖所示:

 

  這里的@SpringBootApllication注解用在主入口函數上,是三個注解的合體:@Configuration@EnableAutoConfiguration and @ComponentScan

  因為這三個注解一般都是成套出現,所以SpringBoot把他們合成了一個。

  這個只需要關注@ComponentScan注解,這個注解的意思是會對目錄下所有的文件進行掃描,功能類似於beans.xml中的:

    <context:component-scan base-package="project"/>

  是的,在主入口函數用了這個注解,連xml文件都省了。

  

  剛才打開的是一個默認的error頁面,可以通過配置Controller來處理request請求:

@RestController
public class web {
    @RequestMapping("/")
    String Home(){
        return "<h1>Home Page!!!</h1>";
    }
    @RequestMapping("/Jimmy")
    String Jimmy(){
        return "<h1>Jimmy Page!!!</h1>";
    }
}

  新建一個java文件,然后代碼如上所示,此時打開localhost:8080,會看到:

  如果將連接改成localhost:8080/Jimmy,會看到:

  也就是說,該類被注解為一個Servlet類,用來處理各種請求。而@RequestMapping注解表明請求路徑,里面還可以指明method,這里就不做演示了。

 

  有時候並不希望主頁通過這樣的方法輸出,也可以自定義一個html頁面作為首頁展示。

  SpringBoot默認會自動掃描/static (or /public or /resources or /META-INF/resources路徑下的靜態資源,然后將其中的index.html作為首頁。

  當然也可以通過自定義路徑來指定靜態資源路徑,這里就演示下 默認掃描:

  

  目錄結構如圖,最重要的是建一個文件夾,名稱為上面列出來的默認項之一,然后往里面丟一個index.html,重啟后打開主頁可見:

 

  上面的自定義錯誤頁面比較丑,SpringBoot可以自定義404頁面,方式也很簡單,在public中新建一個error文件夾,里面放404.html,當出現404錯誤時,會自動掃描該文件夾下的該頁面,如圖:

  

  至此,基本的功能都差不多了,官方文檔還有很多雜七雜八的,目前也用不上。

  后面還有兩章講SpringBoot與Mysql、Nosql的連接使用,因為暫時沒有學數據庫,所以跳過。

 

  完事。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM