切換語言為:簡體
分頁查詢介面,從2s最佳化到了0.01s

分頁查詢介面,從2s最佳化到了0.01s

1 增加預設條件對於分頁查詢介面,如果沒有特殊要求,我們可以在輸入引數中,給一些預設值。這樣可以縮小資料範圍,避免每次都count所有資料的情況。對於商品查詢,這種業務場景,我們可以預設查詢當天上架狀態的商品列表。例如:select ...

Springboot解決跨域問題

Springboot解決跨域問題

前言當我們建立好springboot專案寫了的介面,正準備對接前端專案的時候,此時發現前端專案訪問後端介面報錯。為什麼會出現跨域跨域的出現是因為瀏覽器的同源策略導致,瀏覽器出於安全的考量,防止一個網站對另一個網站的敏感資訊。同源的定義...

以Java專案舉例說明反爬蟲常用方法

反爬蟲操作概述反爬蟲是一系列用於防止網路爬蟲(自動化程式)過度訪問網站、獲取資料的措施。主要操作包括以下幾個方面:識別爬蟲:透過分析訪問請求的特徵來區分正常使用者和爬蟲。例如,監測請求頻率、請求頭資訊(如User - Agent)、I...

什麼是Java中的不可變物件

01、什麼是不可變類一個類的物件在透過構造方法建立後如果狀態不會再被改變,那麼它就是一個不可變(immutable)類。它的所有成員變數的賦值僅在構造方法中完成,不會提供任何 setter 方法供外部類去修改。自從有了多執行緒,生產力...

SpringBoot實現一個實時許可權變更系統...

以下這個案例將涉及到一個許可權管理場景,假設我們有一個內部管理系統,管理員可以動態變更使用者的許可權。我們將演示在使用者訪問某個資源時,許可權發生變更後,系統自動響應並及時反饋許可權的變化。場景描述在這個場景中,使用者有一個可以管理資...

你是如何使用 wait () 方法的?使用 i...

在 Java 中,wait() 方法通常與 synchronized 關鍵字一起使用,以確保執行緒之間的正確同步。wait() 方法使當前執行緒進入等待狀態,直到其他執行緒呼叫 notify() 或 notifyAll() 方法來喚醒...

Java利用這五種方式保證執行緒T1,T2,T...

執行緒是 Java執行的最小單元,通常意義上來說,多個執行緒是爲了加快速度且無需保序,這篇文章,我們來分析一道面試題目:如要保證執行緒T1, T2, T3順序執行?考察意圖在面試中出現這道問題,通常是爲了考察候選人的以下幾個知識點:1...

SpringBoot自動配置:@EnableA...

1. 引言@EnableAutoConfiguration 是 Spring Boot 中的一個關鍵註解,它允許 Spring Boot 根據新增的 jar 依賴自動配置專案。這個特性極大地簡化了 Spring 應用的配置工作。2. ...

SpringBoot整合Shiro+JWT框架...

摘要:本文主要描述如何快速基於SpringBoot 2.5.X版本整合Shiro+JWT框架,讓大家快速實現無狀態登陸和介面許可權認證主體框架,具體業務細節未實現,大家按照實際專案補充。背景為什麼要使用Shiro?隨大流吧,雖然自己也...

Java stream實戰:30個案例精通集合...

一、Stream流的特點和使用流程1. 特點2. 使用流程二、Stream流的魅力三、stream流的建立1. 透過集合建立2. 透過陣列建立3. 透過Stream的靜態方法4. 透過隨機數生成5. 透過檔案I/O6. 無限流7. 透...

巧用反射與註解快速提取類的屬性名為字串列表

最近我在處理一個專案,遇到了一個需求:需要將一個類的屬性轉化為字串列表的形式,比如某個類有屬性 id、username、email,我要把這些屬性轉換成 ["id", "username", "email"] 這樣的字串陣列。這個需求...

SpringBoot中大量資料匯出方案:使用E...

SpringBoot的同步excel匯出方式中,服務會阻塞直到Excel檔案生成完畢,如果匯出資料很多時,效率低體驗差。有效的方案是將匯出資料拆分後利用CompletableFuture,將匯出任務非同步化,並行使用easyExcel...