1. 程式人生 > >Spring Boot環境搭建

Spring Boot環境搭建

Spring Boot環境搭建

方法一:使用idea的Spring Initializer建立

使用idea建立專案
填寫專案相關資訊最後選擇spring boot 初始化的相關元件
選擇web,下一步完成建立,專案建立完成後執行SpringBootDemoApplication的main方法即可啟動服務,訪問localhost:8080

方法二:直接在官網上建立專案並匯入idea中

訪問https://start.spring.io,只需要Dependencies中輸入Web選中即可(輸入Web就是整合SpringMVC功能,如果不需要可以什麼都不輸入,後面如果需要整合SpringMVC的話也是可以的,然後生成專案(即下載專案),然後使用idea開啟即可

Spring Boot專案與傳統web maven專案的區別

打包方式的不同

  • 傳統web maven專案使用的是maven-archetype-webapp骨架,打包方式是使用的war包
  • Spring Boot的打包方式是使用的jar包

pom.xml引入的依賴不同

  • 傳統web專案是引入多個單獨的依賴
  • Spring Boot是引入的spring-boot-starter, 在spring boot中大部分依賴不需要指定version,因為版本號已經在spring-boot-starter-parent中定義過了
  • 預設的Spring boot只包含2個模組.spring-boot-starter(核心模組,包括自動配置支援、日誌和YAML)和spring-boot-starter-test(測試模組,包括JUnit、Hamcrest、Mockito)

專案目錄結構不同

  • 傳統的web專案中src/main/java下是沒有類的,Spring Boot專案中有一個啟動類(Project名稱+Application), 而且在src/test/java中也有一個測試類(Project名稱+ApplicationTest)
  • 傳統的web專案有src/main/webapp/WEB-INF/web.xml, Spring Boot中沒有web.xml
  • 傳統的web專案resources的目錄是空的,Spring Boot專案中resources中有static、templates目錄和一個配置檔案application.properties

專案執行方式不同

  • 傳統web專案是啟動tomcat
  • Spring Boot專案是直接執行main方法或者直接執行jar(java -jar <project>.jar)

Spring Boot的優點

  1. 整合框架非常簡單,例如整合SpringMVC,只需引入spring-boot-starter-web這一個依賴,也不需要做任何配置,這樣整合起來非常快速方便。Spring Boot支援很多常用的框架整合, 如 log、test、mybatis、nosql、mq、模板技術(thymeleaf、freemark)、jpa、aop、actuator 等
  2. 引入的依賴的數量很少,例如要引入測試依賴JUnit、Hamcrest、Mockito只需要引入spring-boot-starter-test這一個依賴就行了
  3. 自動化配置,使用預設配置,再也不需要applicationContext.xml等配置檔案
  4. 支援自定義配置,可以配置在application.yml或者Config類中,如果自定義了就使用自定義的值,沒有自定義的則使用預設的值
  5. 執行更加簡單,直接使用java -jar 命令,或者直接在IDE中執行main方法
  6. 內建維護功能

Spring Boot的缺點

  1. 高度封裝,出現問題不易排查
  2. 將現有或傳統的Spring Framework專案轉換為Spring Boot應用程式是一個非常困難和耗時的過程。它僅適用於全新Spring專案