如何优雅的查看方法耗时,不用写一行代码!这个插件支持的太多了

前言

没错,又是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 !, 下面都能看懂吧,就不需要多解释了。

java 复制代码
public void handlerResponse(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()+"");

}
相关推荐
IT_陈寒7 小时前
为什么我的Java Stream操作总是默默吃掉异常?
前端·人工智能·后端
江湖十年8 小时前
Go 虚荣域名详解:我用 go get -x 抓了个包,终于看清了 Go 工具链“对暗号”的全过程
后端·面试·go
Lost of 程序猿8 小时前
船岸数据同步链路实战:SendFlag、单调版本号与断网三天后的续传
后端·c#·asp.net
卷无止境8 小时前
大模型如何调用工具,一次讲清背后的技术门道
后端·python
90后的晨仔8 小时前
Python 进阶:海象运算符与模式匹配,让你的代码更优雅!
后端
卷无止境14 小时前
智能体开发环境ADE浅析,编程工具的下一次范式跃迁
后端·python
码事漫谈17 小时前
DeepSeek 这波操作很凶
后端
Bs_MoneyMagnet18 小时前
基于springboot+vue的医疗健康便民服务平台的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring
子兮曰20 小时前
Bun v1.4.1 深度解析:从 Zig 到 Rust,一场 11 天、64 个 AI 代理的语言迁徙
前端·后端·bun
IT_陈寒21 小时前
Vue的computed属性竟然坑了我一把
前端·人工智能·后端