當前位置: 妍妍網 > 碼農

不用一行程式碼檢視方法耗時,這款 IDEA 外掛程式有點酷!

2024-08-20碼農
前言

沒錯,又是Cool Request外掛程式,這次引來一個重大更新,可以統計任意方法耗時,先上個圖。

另外,這是此次更新的功能。

什麽是Cool Request

Cool Request是一個IDEA中的介面偵錯外掛程式,除了可以發起基本的HTTP請求之外,還提供了強大的反射呼叫能力,可以繞過攔截器,這點廣受網友的好評,當然伴隨著還有Spring中對@Scheduled註解的呼叫,以及xxl-job的支持,這是不是很酷(Cool)?

什麽是Trace

我懷著一顆激動的心向大家介紹這個Trace功能。

Trace可以統計除了java包的任意包,為什麽不能統計java的?因為可能會出現不穩定的情況,再說,java包怎麽可能有問題,有問題的也是你的程式碼(手動狗頭)。

Trace如果在啟用狀態下,將在你發起請求的時候,自動從Controller方法下開始跟蹤,如果深度為1,那麽則只跟蹤Controller方法,如果深度為2,則跟蹤Controller下所有方法,深度為3,那就跟蹤Controller下所有方法下的所有方法,以此類推,但是會出現你設定了一個很大的值,卻跟蹤不到這個深度,因為有些是透過介面(interface)呼叫的,靜態代分碼析無法分析到是哪個實作類,所以沒辦法繼續向下跟蹤,可以右擊任意方法,手動添加方法跟蹤。

自動跟蹤Mybatis函式

Trace可以選擇性的跟蹤Mybatis的執行函式,這個函式是最終執行sql語句的函式,如下圖,可以很方便的看到這個查詢執行了7ms。

如果你對源碼有了解,可以添加任意方法。

顯示呼叫次數

另外,其中左側的+100,這些代表在這個方法下,此方法呼叫了100次,但目前無法統計每個方法的耗時。

自訂耗時顏色

如果想高亮5ms以上的方法,可以在設定中,設定5ms,那麽超過5ms的將處於紅色狀態,非常方便。

指令碼中操作環境

想象一下場景,你的所有操作都需要登入(如果實作下沒有用到使用者資訊,可以選擇反射呼叫,繞過攔截器),請求頭中都需要填寫token,而這個token是其他介面獲取的,那麽你可以在這個介面下寫一個指令碼,獲取到token,然後對環境變量進行操作,設定一個header,非常的方便。

另外響應中,大部份是透過json格式,那麽怎麽在響應指令碼中解析json?

使用Cool Request那可比其他外掛程式方便太多了。

Cool Request支持呼叫你計畫中任意的類,包括第三方的!,Gson有吧,Fastjson有吧,如果沒有,SpringBoot預設引入的ObjectMapper總該有吧,都可以呼叫,下面是一個例子。

不需要你學習其他語言,就用Java !下面都能看懂吧,就不需要多解釋了。

publicvoidhandlerResponse(ILog log, HTTPResponse response,IEnv env){
String body =new String(response.getResponseBody());
log.println(body);
User user = JSON.parseObject(body, User. class);
log.println(user.getAge()+"");
}

原文連結:juejin.cn/post/7351300787649134611

·················END·················

用官方一半價格的錢,用跟官方 ChatGPT4.0 一模一樣功能的工具。

國內直接使用ChatGPT4o:

谷歌瀏覽器直接使用:https://www.nezhasoft.cn

  1. 無需魔法,同時支持手機、電腦

  2. 帳號獨享

  3. ChatGPT4o mini永久免費

  4. 支持Copilot、DALLE AI繪畫、上傳檔等

長按辨識下方二維碼,備註ai,發給你

回復gpt,獲取ChatGPT4o直接使用地址

點選閱讀原文,國內直接使用ChatGpt4o