日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

springboot 获取项目路径_怎样学习 SpringBoot

發(fā)布時間:2025/3/15 javascript 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 springboot 获取项目路径_怎样学习 SpringBoot 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

學習 SpringBoot 需要做哪些準備?

  • IDE:IDEA
  • 基礎工具:JDK1.8、Maven

SpringBoot 背景介紹

什么是 SpringBoot

  • Spring Boot是 Spring 開源組織下的一個子項目,也是 Spring 組件一站式解決方案,主要是為了簡化使用 Spring 框架的難度,簡省繁重的配置
  • Spring Boot提供了各種組件的啟動器(starter),開發(fā)者只要能配置好對應組件參數(shù),Spring Boot 就會自動配置,讓開發(fā)者能快速搭建依賴于 Spring 組件的 Java 項目
  • Spring Boot不但能創(chuàng)建傳統(tǒng)的 war 包應用,還能創(chuàng)建獨立的不依賴于任何外部容器(如:tomcat)的獨立應用,使用 java -jar 命令就能啟動

SpringBoot 的設計目標

  • 為 Spring 應用開發(fā)提供一個更快、更容易上手的入門體驗
  • 提供一系列在經常用到的公共的非功能性特性,如:內嵌入服務器、安全、度量指標、健康檢測、外部化配置
  • 零代碼配置生成及零 XML 配置

SpringBoot 包含哪些特性

首先,需要知道,SpringBoot 工程(應用)與普通的 Java/Spring 應用沒有任何區(qū)別,或不一樣的實現(xiàn)形式。簡單的說,你只要在 pom 文件中加上了 SpringBoot 所必須的 parent 和相關依賴,這就是一個 SpringBoot 應用。

當你理解了 Spring,學習 SpringBoot,是一件很簡單的事,因為它只是簡化了對 Spring 的使用與配置。除此之外,它也提供了一些功能強大且方便的特性。這里,我介紹一些最為常用的特性。

應用啟動入口

  • 注解 @SpringBootApplication
  • 三種啟動方式
    • SpringApplication 的靜態(tài)方法 run
    • 通過 SpringApplication 的 Api調整應用行為
    • SpringApplicationBuilder 的 Fluent Api,可以實現(xiàn)鏈式調用

自動配置的原理

簡單的說,自動配置就是會根據(jù)在類路徑中的jar、類自動配置Bean。Spring Boot將所有的功能場景都抽取出來,做成一個個的starter(啟動器),只需要在項目里面引入這些starter,相關場景的所有依賴都會導入進來。

自動配置的實現(xiàn)是基于三個重要的注解實現(xiàn)的(實際就是 @SpringBootApplication 注解):

  • @SpringBootConfiguration 類似于 @Configuration
  • @EnableAutoConfiguration 開啟自動配置的功能
  • @ComponentScan 掃描注解,掃描 classpath 下的定義的 bean,即 將@Controller、@Service、@Component、@Repository等注解加載到IOC容器中

配置文件優(yōu)先級

  • 同一個目錄下的 application 和 bootstrap
    • bootstrap 優(yōu)先級高于 application,優(yōu)先被加載
    • bootstrap 用于應用程序上下文的引導階段,由父 ApplicationContext 加載
    • bootstrap 是系統(tǒng)級別的配置(不變的參數(shù)),application 是應用級別的配置
  • 不同位置的配置文件加載順序(優(yōu)先級)
    • file:./config/ - 優(yōu)先級最高(項目根路徑下的 config)
    • file:./ - 優(yōu)先級第二(項目根路徑下)
    • classpath:/config/ - 優(yōu)先級第三(項目 resources/config 下)
    • classpath:/ - 優(yōu)先級第四(項目 resources 目錄下)
    • 高優(yōu)先級覆蓋低優(yōu)先級相同配置、多個配置文件互補

配置注入的方式

  • 直接使用 @Value
  • 使用 @ConfigurationProperties + prefix 的方式

Jackson 的使用技巧

通常在項目中處理JSON一般用的都是阿里巴巴的fastjson, 后來發(fā)現(xiàn)使用Spring Boot內置的Jackson來完成JSON的序列化和反序列化操作也是非常方便的。

  • @JsonProperty,作用在屬性上,用來為JSON Key指定一個別名
  • @Jsonlgnore,作用在屬性上,用來忽略此屬性
  • @JsonIgnoreProperties,忽略一組屬性,作用于類上
  • @JsonFormat,用于日期格式化
  • Jackson通過使用ObjectMapper的writeValueAsString方法將Java對象序列化為JSON格式字符串
  • 反序列化使用 ObjectMapper 的 readValue

定時任務

在 SpringBoot 中開啟定時任務需要做兩件事:

  • @EnableScheduling:允許當前的應用開啟定時任務
  • @Scheduled:指定定時任務的運行規(guī)則

異步任務

通常代碼都是順序執(zhí)行(一行一行的執(zhí)行),這也就是同步調用。但是異步編程卻沒有這樣的限制,代碼執(zhí)行并不是阻塞的。可以直接調用不用等待返回,而是在某一個想要獲取結果的時間點再去獲取結果。在 SpringBoot 應用中編寫異步代碼:

  • 引入spring-boot-starter-web依賴
  • 在SpringBoot入口類上加上 @EnableAsync 注解,開啟異步支持
  • 只需要在方法上加上 @Async 注解,則當前方法就是異步方法

默認情況下的異步線程池配置使得線程不能被重用,每次調用異步方法都會新建一個線程,我們可以自己定義異步線程池來優(yōu)化。

單元測試

編寫單元測試可以幫助開發(fā)人員編寫高質量的代碼,提升代碼質量,減少Bug,便于重構。SpringBoot提供了一些實用程序和注解,用來幫助我們測試應用程序,在SpringBoot中開啟單元測試只需引入spring-boot-starter-test即可,其包含了一些主流的測試庫。

一個標準的SpringBoot測試用例應該包含兩個注解:

  • @SpringBootTest:意思是帶有 SpringBoot 支持的引導程序,其中提供了可以指定 Web 環(huán)境的參數(shù)
  • @RunWith(SpringRunner.class):告訴JUnit運行使用Spring的測試支持。SpringRunner是SpringJUnit4ClassRunner的新名字,這個名字只是讓名字看起來簡單些

······························歡迎關注課程:

基于 SpringCloud 微服務架構下 廣告系統(tǒng)設計與實現(xiàn)

JAVA分布式優(yōu)惠券系統(tǒng)后臺 手把手實戰(zhàn)開發(fā)

作者:張勤一

鏈接:http://www.imooc.com/article/290186

來源:慕課網

本文原創(chuàng)發(fā)布于慕課網 ,轉載請注明出處,謝謝合作

總結

以上是生活随笔為你收集整理的springboot 获取项目路径_怎样学习 SpringBoot的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。