SpringBoot2 骨架搭建

SpringBoot2 骨架搭建

SpringBoot2介紹

衆所知周,SpringBoot誕生後,很多互聯網公司對它垂青,逐漸採用新型框架融入到項目體系中,從設計理念和落地,筆者認爲它是目前市面上一款很重要完整的框架體系,小夥伴如細心觀察,Spring開源社區非常活躍,Springboot版本逐漸迭代更新到2X系列,下面一起來看下它的新特性

github開源WIKI說明:

https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Release-Notes

支持JDK1.8及以上、Spring Framework 5

jdk1.8\Spring Framework 5新特性可自行閱讀,本文不在闡述

  • 內嵌Tomcat8.5
  • 嵌入Netty服務器 4.1
  • 提供HTTP / 2協議支持,低版本都是HTTP/1
  • 廢棄Springboot1X的Environment上下文環境變量獲取方式,採用BinderAPI
  • Gradle插件語法重大升級,Gradle 3.x及以上引入包的方法變更
  • Actuator endpoint健康檢查統計,訪問權限安全優化
  • 提供更多註解融合

SpringBoot2骨架搭建流程

描述

可在線通過https://start.spring.io/,生成你需要的骨架包,當然工具Ecplise、STS、idea都基於start.spring.io 生成,筆者建議剛入手同學,生成的骨架不包含其它相關包,項目比較乾淨,待後續自行引入相關包能加深熟悉度

版本

SpringBoot 2.2.0.BUILD-SNAPSHOT、Gradle3.1、JDK1.8

步驟

  1. 打開 https://start.spring.io/,選好版本號、編譯工具生成包
  2. gradle、maven私服倉庫默認是國外的,下載過程較慢,改成國內倉庫地址http://maven.aliyun.com/nexus/content/groups/public/
  3. 解壓生成包,進入根目錄,本地無gradle環境 使用gradlew build,反之 gradle build,第一次編譯很慢,耐心等待
  4. 編譯完畢後 gradle相關依賴包默認生成路徑 C盤/用戶/.gradle/caches/modules-2/files-2.1,Maven在.m2/裏面,兩者都可以指定路徑配置
  5. 默認生成jar包,路徑在 build目錄裏面,可自定選擇或調整war
  6. 默認內嵌Tomcat容器運行命令 java -jar 包名,可改成jetty容器
  7. 筆者建議開發環境用jar包,生產環境用War包,調優方便

. ____ _ __ _ _
/\ / __ _ () __ __ _ \ \ \
( ( )_
_ | '_ | '| | ’ / ` | \ \ \
\/ )| |)| | | | | || (| | ) ) ) )
’ |
| .__|| ||| |__, | / / / /
=|_|======|/=////
:: Spring Boot :: (v2.2.0.BUILD-SNAPSHOT)
Tomcat initialized with port(s): 8080 (http)
Initializing ProtocolHandler [“http-nio-8080”]
Starting Servlet engine: [Apache Tomcat/9.0.21]
Root WebApplicationContext: initialization completed in 737 ms

到此啓動完成

筆者生成骨架後,後續依次引入相關技術整合相關技術如下

  1. Springboot2.2 + gradle3
  2. mybatis+druid + mysql5.7/兼容H2內存數據庫
  3. ES+JPA
  4. 攔截器+ 過濾器+全局異常處理
  5. 多數據源: JDK動態代理
  6. 前後端交互 跨域+自定義header
  7. 集成jsp-jstl、編譯成War單獨部署tomcat、jetty可正常訪問
  8. 集成redis集羣 (底層通過lettuce 連接客戶端,lettuce基於netty多線程併發性能高、廢棄jedis)
  9. 增加Rest參數驗證 hibernate.validator
  10. 後續會集成微服務框架 SpringCloud

小夥伴可基於骨架進行擴展

Github:https://github.com/zacharyheloss/Springboot2

application.yml屬性配置

https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html

springBoot整合了哪些技術

https://github.com/spring-projects/spring-boot/tree/v2.1.0.RELEASE/spring-boot-project/spring-boot-starters

依賴包引入配置

https://www.cnblogs.com/selfchange/p/10014312.html

作者簡介:張程 技術研究

更多文章請關注微信公衆號:zachary分解獅 (frankly0423)

公衆號

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章