前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Idea 插件推荐

Idea 插件推荐

作者头像
后端云
发布2021-12-20 15:58:18
1K0
发布2021-12-20 15:58:18
举报
文章被收录于专栏:后端云后端云

几种语言使用下来的,Java还是更适合开发复杂的业务流程,脚本语言python和go还是适合快速开发以及做小工具以及将一个个小工具粘合成大工具。java的开发工具Idea已经不是单纯意义上的java 代码层次的develop studio,配合强大的插件更像是一个开发工具一站式平台。包含了测试,自动化代码生成,CICD,项目管理,数据库client,效率工具的大集合。

Idea http client

最推荐的,完全可以取代postman。菜单tools -> http client。 如果使用 Postman 工具来测试接口,不仅要在电脑上安装 Postman ,还需要在不同工具之间切换,比较麻烦。幸运的是 IDEA 自带了一款简洁轻量级的接口调用插件,

写入请求内容

代码语言:javascript
复制
请求路径
GET http://localhost:8080/user
请求头
Content-Type: application/json
{
  请求体
}
三个井号分割开两个请求language-http复制代码

响应处理脚本(Response handler script)

  • 我们很多时候不会一个 会话 只发送一个 请求 ,而是在一个会话中发送多个请求。
  • 并且,会根据不同响应,发送不同的请求或者请求体。 这就需要响应脚本进行处理。

刚好 idea 的 http client 提供了 响应处理脚本 的功能,例如:

代码语言:javascript
复制
### 认证
POST https://36.121.8.231:33021/api/v1/cmp/authentication/token
Content-Type: application/json;charset=UTF-8

{
  "username": "abc",
  "password": "abc123"}> {%
client.log("this is a client log");
client.log(response.headers);
client.log(response.headers.valueOf("X-Auth-Token"));
client.log(response.body);
client.log(response.body.issueAt);
client.log(response.status);
client.global.set("token", response.headers.valueOf("X-Auth-Token"));
client.global.set("url", "https://36.121.8.231:33021")
client.global.set("poolId", "2cc8c281-a909-449e-bf78-2babda17fc6a");
client.global.set("tenantId", "d1fa53e1-01dc-4b51-8051-ed949d943b8a");
client.test("Request executed successfully", function() {
  client.assert(response.status === 201, "Response status is not 201");});%}language-http复制代码

上面是发送一个认证接口的POST请求。 client.log是输出日志信息,如:打印一段文字;打印response的头,打印response的头的”X-Auth-Token”,打印返回体json数据,打印返回体json数据的某一字段issueAt,打印返回的状态码,赋值token poolId tenantId全局变量,断言。

之后就可以使用全局变量{{token}} {{poolId}} {{tenantId}}

日志功能

操作界面的右上角有增加环境变量文件和打开日志等按钮。 日志文件按照从新到旧的顺序记录每次的http request以及respone信息,有点遗憾的是没有response的header信息。

IntelliJ IDEA HTTP Client 的优点有:

  • 在同一窗口实现开发和测试。
  • 测试脚本可以实现串联的接口调用,提高测试效率。
  • 结合git可上传的测试脚本,在多人协同合作的环境下,共享接口请求代码变得非常简单。

Idea GsonFomatPlus & Idea Lombok

Lombok的@data注解最为常用,用于简化代码的,结合Idea GsonFomatPlus & Idea Lombok,可以自动生成对象类的代码。

例如有如下的requst或reponse:

代码语言:javascript
复制
{ 
    "name": "王五", 
    "gender": "man", 
    "age": 15, 
    "height": "140cm", 
    "addr": { 
        "province": "fujian", 
        "city": "quanzhou", 
        "code": "300000" 
    }, 
    "hobby": [ 
        { 
            "name": "billiards", 
            "code": "1" 
        }, 
        { 
            "name": "computerGame", 
            "code": "2" 
        } 
    ] 
} language-json复制代码

在实体类代码中快捷键option+s调出界面

Idea git & Idea JIRA & Idea Gerrit

Idea git用起来效率略低于命令行的git,但是Idea git不用切换软件界面,另外界面更加友好,也是一个选择。另外借助git commit template插件,拥有比命令行更加强大的commit模版管理功能。

Idea JIRA用是能用,但是功能太有限,几乎不能满足日常JIRA的需求,最多只能看下提给自己的JIRA issue以及改下JIRA issue的状态。

Idea Gerrit拥有Gerrit web的常用功能,如review +1+2,submit,查看提交的信息和提交的code diff,使用区别就是一个是Idea界面,一个是web界面。

下面3个截图都是Idea的界面,和Gerrit web界面完全一致。

Idea xftp/ssh/teminal/database/MyBatisX

Idea xftp用于临时传个jar包很方面,不用切换软件。 Idea ssh/teminal 临时执行一个命令也算方便。 Idea database对数据库的常用操作都有了,不用切换软件,缺点就是速度上感觉比navicat要慢一点。 Idea MyBatisX对切换java代码和xml代码间提供了便利。

Idea mind map

可以在写代码的同时写思维导图。file -> new 思维导图。

Idea Paste Image into Markdown

在Markdown文件中方便插入截屏图片。类似Typora软件的截屏图片的插入。

Idea IDE Eva Reset

用于reset评估版的时间的,可以有无限时间的评估时间,相当于在免费使用正版的Idea。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-12-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 后端云 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Idea http client
    • 写入请求内容
      • 响应处理脚本(Response handler script)
        • 日志功能
          • IntelliJ IDEA HTTP Client 的优点有:
          • Idea GsonFomatPlus & Idea Lombok
          • Idea git & Idea JIRA & Idea Gerrit
          • Idea xftp/ssh/teminal/database/MyBatisX
          • Idea mind map
          • Idea Paste Image into Markdown
          • Idea IDE Eva Reset
          相关产品与服务
          项目管理
          CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档