IDEA 插件安装 步骤

IDEA里面,选择打开 File --> Settings --> Plugins

在Plugins里面, 可以搜索需要的插件 (下面的标题),然后安装

如下图:

AceJump

全栈必备,作为一个全能的程序员 ,用鼠标,太伤自尊了,他就可以帮到你

AceJump其实是一款能够代替鼠标的软件,只要安装了这款插件,可以在代码中跳转到任意位置。按快捷键进入 AceJump 模式后(默认是 Ctrl+J),再按任一个字符,插件就会在屏幕中这个字符的所有出现位置都打上标签,你只要再按一下标签的字符,就能把光标移到该位置上。

换言之,你要移动光标时,眼睛一直看着目标位置就行了,根本不用管光标的当前位置。

Grep Console

由于Intellij idea不支持显示ascii颜色,grep-console插件能很好的解决这个问题, 可以设置不同级别log的字体颜色和背景色.,勾上你想要的日志级别

Maven Helper

我一般用这款插件来查看maven的依赖树。

  • 在不使用此插件的情况下,要想查看maven的依赖树就要使用Maven命令maven dependency:tree来查看依赖。
  • 想要查看是否有依赖冲突也可以使用mvn dependency:tree -Dverbose -Dincludes=<groupId>:<artifactId>只查看关心的jar包
  • 但是这样还是需要我执行命令,并且当项目比较复杂的时候,这个过程是比较漫长的。maven helper就能很好的解决这个问题。

EasyCode

一个在线生成MyBatis增删改查的工具比逆向工程更厉害,可以生成 Controller和 Service,还有前端 ,提高开发效率

使用步骤:

详细使用大家可以参考 官网文档 ,国人写的,文档很全面:

https://gitee.com/makejava/EasyCode/wikis/pages?sort_id=725164&doc_id=166248

RestfulTookit

作为一个程序员,不管是前端、后端、还是测试,都要经常面对接口。

后端开发接口,前端对接接口,测试测试接口。

目前,我们最常用的接口测试工具,基本是Postman。今天我们换一种

使用步骤

  1. 根据 URL 直接跳转到对应的方法定义 ( Ctrl or Ctrl Alt N );
  2. 提供了一个 Services tree 的显示窗口;
  3. 一个简单的 http 请求工具;
  4. 在请求方法上添加了有用功能: 复制生成 URL;,复制方法参数…
  5. 其他功能: java 类上添加 Convert to JSON 功能,格式化 json 数据 ( Windows: Ctrl + Enter; Mac: Command + Enter )。

下面全是中间件插件,中间件是程序员的噩梦,工具太多,操作复杂一直切换,还有不同的用法,看了下面的,我相信你会爱上中间件。

学习资料:Java进阶视频资源

Iedis

大家都知道我们之前连接这个缓存中间件都是使用 + RedisDesktopManager,今天来换个 Redis插件,更强大

Iedis 是一个简单易用的Redis GUI 插件,他可以轻松管理上百万个Key而不会阻塞服务器。

服务器列表支持同时连接多台Redis服务器,并可以轻松切换。

插件主界面如图所示。

Mongo Plugin

讲完Redis ,咱们再来 MongoDB ,谁叫咱们是全栈

一个 可以在 IDEA 快速操作MongoDB的可视化界面

RabbitMQ Script Support

增加了对通过Broker HTTP API通过基于YAML的脚本执行的RabbitMQ命令的支持,便于测试

  • 准备带有可执行块的脚本文件
  • 执行整个脚本或仅执行相关部分
  • 定义多个RabbitMQ连接配置文件以在多个环境中执行单个脚本
  • 目标RabbitMQ代理必须通过其管理插件公开HTTP API

mybatis sql plugin

mybatis代码生成工具 ,实现全自动化 生成,可视化界面更方便

BackgroundImagePlus

可以把女朋友照片当作 背景,每次打开IDEA ,一看到他,你就不会感到疲劳了 嘻嘻!

操作步骤

Lombok

Lombok能以简单的注解形式来简化java代码,提高开发人员的开发效率。

例如开发中经常需要写的javabean,都需要花时间去添加相应的getter/setter,也许还要去写构造器、equals 等方法,而且需要维护,当属性多时会出现大量的getter/setter方法,这些显得很冗长也没有太多技术含量,一旦修改属性,就容易出现忘记修改对应方法的失误。

Lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、equals、hashcode、toString方法。

注解说明 详解

  • @Data

会为类的所有属性自动生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。

  • @Getter/@Setter

如果觉得@Data太过残暴(因为@Data集合了@ToString、@EqualsAndHashCode、 @Getter/@Setter、@RequiredArgsConstructo r的所有特性)不够精细,可以使用@Getter/@Setter注解,此注解在属性上,可以为相应的属性自动生成Getter/Setter方法。

  • @NonNull

该注解用在属性或构造器上,Lombok会生成一个非空的声明,可用于校验参数,能帮助避免空指针。

  • @Cleanup

该注解能帮助我们自动调用close()方法,很大的简化了代码 @NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor

无参构造器、部分参数构造器、全参构造器。Lombok没法实现多种参数构造器的重载。

详细大家可以参考官网 :https://projectlombok.org/

activate-power-mode

根据Atom的插件activate-power-mode的效果移植到IDEA上,打字有 动画特效

 

Jrebel

热部署 神器

最后别忘了把JRebel设置为offline模式 点一下work offline

下面的 插件 大家直接复制 到 这里直接安装就好了,因为比较简单

JUnitGenerator V2.0

有一个好的编写单元测试习惯的开发者,代码质量肯定是很好的,可以随时校验自己开发和改写接口的快速检查工具。也避免了测试提的bug多而影响个人绩效(有些公司把bug计入考核范围内)。拜拜甜甜圈,哦不对,是拜拜bug

Alibaba Java Coding Guidelines

阿里巴巴代码规范检查插件,代码规范检查用的

阿里出品的《Java 开发手册》时下已经成为了很多公司新员工入职必读的手册,前一段阿里发布了《Java 开发手册(泰山版)》, 又一次对Java开发规范做了完善。不过,又臭又长的手册背下来是不可能的,但集成到IDEA开发工具中就方便很多。

举个栗子:开发手册上不允许用Executors去创建线程池,而是通过ThreadPoolExecutor的方式。

集成插件后会再去使用Executors去创建线程池会有如下的提示。

 

VisualVM Launcher

一般可用于在本地开发进行压力测试,性能测试之类的监控器,其他场景一般不推荐使用此模式启动,还会启动另外一个Visual vm窗口,这个窗口是JDK bin目录下的JvisualVM

String Manipulation

字符串工具

 

Key promoter

个人最喜欢的一个 ,一个提示快捷键,当你做重复操作时,就会提示你,是否将当前操作变成快捷键

CodeGlance

快速定位代码。右侧小地图。这个 主要是 代码过多方便定位

 

Gsonformat

可根据json数据快速生成java实体类

 

Material Theme UI

颜值大佬 工具的颜值也很重要,好的主题让人赏心悦目,有码代码的欲望,就像美女帅哥一样

Translation

在平时的开发中,有时候对于变量的命名是否很头疼,这款插件可以帮助你翻译单词,对于英语差的同学真是福音

使用很简单:选中单词或者段落ctrl+shift+y翻译,ctrl+shift+s切换翻译源

stackoverflow

这东西 就吊了 ,可以随时翻译 我们遇到的错误

Vue

Vue.js 是现在的主流技术 ,那肯定让Vue的语法变得更加友好,必须要安装

我们来看看安装前后 效果区别

未安装时 :

安装后

Generate AllSetter

我们setXxxx()的时候就非常痛苦了,花费大量的时间去做一些苦力活,显示不是我们想要的。

使用GenerateAllSetter就能解决这个问题,它就能做到一键生成一个对象的所有的set方法。

 

图中可以看到通过GenerateAllSetter插件一键生成了User类的setXxx方法,简化了我们平时大量手工码字的工作。

其实我们敲Alt+Enter键时,会看到有三个选项,视频中选的是填充默认值,另外两个看需求选择。

学习资料:Java进阶视频资源

GsonFormat

GsonFormat 个人觉得是一个非常非常实用的插件,它可以将JSON字符串自动转换成Java实体类。特别是在和其他系统对接时,往往以JSON格式传输数据,而我们需要用Java实体接收数据入库或者包装转发,如果字段太多一个一个编写那就太麻烦了。

快捷键:Alt+ S

 

Codota

用了Codota 后不再怕对API不会用,举个栗子:当我们用stream().filter()对List操作,可是对filter()用法不熟,按常理我们会百度一下,而用Codota 会提示很多filter()用法,节省不少查阅资料的时间。

 

当然,它还有网页版 : https://www.codota.com/code

jclasslib bytecode viewer

很多人想学习Java反汇编后的字节码,但是一方面缺乏好的资料,另外一方面缺乏好的工具。但今天你来看看这款工具

jclasslib bytecode viewer 是一个可以可视化已编译Java类文件和所包含的字节码的工具。另外,它还提供一个库,可以让开发人员读写Java类文件和字节码。

使用方法

  • 在 IDEA 打开想研究的类。
  • 编译该类或者直接编译整个项目( 如果想研究的类在 jar 包中,此步可略过)。
  • 打开“view” 菜单,选择“Show Bytecode With jclasslib” 选项。
  • 选择上述菜单项后 IDEA 中会弹出 jclasslib 工具窗口。

Auto filling Java call arguments

开发中,我们通常会调用其他已经编写好的函数,调用后需要填充参数,但是绝大多数情况下,传入的变量名称和该函数的参数名一致,当参数较多时,手动单个填充参数非常浪费时间。

该插件就可以帮你解决这个问题。

安装完该插件以后,调用一个函数,使用 Alt+Enter 组合键,调出 “Auto fill call parameters” 自动使用该函数定义的参数名填充。

 

GenerateO2O

需要定义一个函数,参数是待转换的类,返回值是要转换到的类型,然后使用generateO2O,即可自动帮你get set属性。

可以定义一个专门的转换类,比如ScheduleConverter 将转换代码放到这里,一方面方便复用,一方面避免转换类占据大量逻辑类的空间。当然可以使用 MapStruct

此外强烈推荐不要用类转换工具,修改属性不容易感知,容易出Bug!!

PlantUML

最近项目使用IntelliJ IDEA来做后台的开发IDE工具,需要利用UML来做些设计。就给大家推荐这个

Stack trace to UML

很多时候我们报错的时候,并不知道调用的链路到底搜索哪里出问题了,所以这个时候,我们就需要,用到这个工具了,它可以 将错误堆栈信息转成Uml形式

Rainbow Brackets

由于很多人没有养成好的编码风格,没有随手 format 代码的习惯,甚至有些同事会写代码超过几百行,阅读起来将非常痛苦。

痛苦的原因之一就是找到上下文,由于括号太多,不确定当前代码行是否属于某个代码块,此时这个插件就会帮上大忙。下面就出现了彩虹括号

FindBugs

程序员总是想尽可能地避免写 BUG, FindBugs 作为静态代码检查插件,可以检查你代码中的隐患,并给出原因。

分析完之后就会出现结果面板

点击对应的item在右边会定位到具体的代码

AllFormat

一个可以格式化JSON、XML、HTML、以及MAP的toString()打印的字符串的插件,All Format,另外还可以直接生成MD5,方便开发人员调式自己的代码 ,在没有 它之前,我们可能 搜索 啥 在线 json 、在线 XML 类似

网上在线Json格式化

JSON

XML

有了它之后 ,按住Alt+F 或 点击 这个图标

就会弹出 这个 ,下面 是格式化之前的效果

当我们点击 按钮,格式化之后

是不是很神奇 哈哈哈!

IDEA Mind Map

思维导图对于我们需求分析和知识库关系梳理十分重要。有了这个插件以后 IDEA 也可以画思维导图了。而且功能还十分强大,贴图啥的应有尽有。

1.打开IDE,file–settings–plugins,搜索IDEA Mind Map

2.点击install,进行下载,然后按照提示restart重启IDEA,安装完成

3.创建mind map思维导图–在项目任意目录下,点击右键,new–选择Empty Mind Map,即可创建自己的项目思维导图

示例:

Git Commit Template

入职的时候, 如果老是有人吐槽你提交的 Git 不规范?你可以试试这个插件。它提供了很好的 Git 格式化模版,你可以按照实际情况格式化你的提交信息。

Git Commit message 规范采用的是Angular 规范

Angular规范中定义的格式有3个内容:

Header

  • type(必需) :Type of change:commit的类别;
  • scope(可选):Scope of this change:此次commit的影响模块;
  • subject(必需):Short description:简短的描述此次代码变更的主要内容

Body

  • 对本次 commit 的详细描述

Footer

  • 日常项目中开发,Footer不常用,可为空

Header

type : type用于说明commit的类别,常用的标识如下:

  • feat:新功能
  • fix:修补bug
  • docs:文档
  • style:格式(不影响代码运行的变动,空格,格式化,等等)
  • refactor:重构(即不是新增功能,也不是修改bug的代码变动)
  • perf: 性能 (提高代码性能的改变)
  • test:增加测试或者修改测试
  • build: 影响构建系统或外部依赖项的更改(maven,gradle,npm 等等)
  • ci: 对CI配置文件和脚本的更改
  • chore:对非 src 和 test 目录的修改
  • revert: Revert a commit

scope

  • scope用于说明 commit 影响的范围,比如数据层、控制层、视图层等等,视项目不同而不同。

subject

  • subject是 commit 目的的简短描述,不超过50个字符,主要介绍此次代码变更的主要内容。

Body

  • Body 部分是对本次 commit 的详细描述,可以分成多行。

例如:

  • 修改菜单查询接口
  • 增加菜单删除接口

日常项目开发中,如果Header中subject已经描述清楚此次代码变更的内容后,Body部分就可以为空。

Footer

  • 不兼容变动
  • 关闭 Issue

日常项目中开发,Footer不常用,可为空。

撤销:

若需要撤销上一次的commit,header部分为:revert: 上一次commit的header内容;

body部分为:This reverts commit xxx,xxx是上一次commit对应的SHA 标识符。

提交的时候点击下图按钮,即可出现模板:

选择Type,填写相应内容,最后点击提交即可:

如果想手敲, git 不熟悉的朋友,直接看下面图吧,毕竟我也记不住 哈哈~ :

CamelCase

命名风格转换插件,可以在 kebab-case,SNAKE_CASE,PascalCase,camelCase,snake_case 和 空格风格之间切换。快捷键苹果为 ⇧+⌥+ U ,windows 下为 Shift + Alt +U。

 

Extra Icons

这个东西可有可无,美化插件,为一些文件类型提供官方没有的图标。

当然你也可以自定义图标,这样对你来说,编程时,便看到的就是自己的图标,开发起来也会有成就感

来看看效果吧。

IDEA神器插件-40款的更多相关文章

  1. 40款非常棒的 jQuery 插件和制作教程(系列一)

    jQuery 在现在的 Web 开发项目中扮演着重要角色,jQuery 让网站有更好的可用性和用户体验,让访问者对网站留下非常好的印象.jQuery以其插件众多.独特.轻量以及支持大规模的网站开发闻名 ...

  2. 前端开发必备 40款优秀CSS代码编写工具推荐

    摘要:CSS工具可以简化工作流,可以提高CSS编写速度,是开发者和设计者所不可缺少的.本文列举了40种CSS工具,功能涉及CSS菜单.动画.3D图形.响应式页面.图层.按钮等界面元素的设计与制作,你定 ...

  3. 精选Pycharm里6大神器插件

    http://www.sohu.com/a/306693644_752099 上次写了一篇关于Sublime的精品插件推荐,有小伙伴提议再来一篇Pycharm的主题.相比Sublime,Pycharm ...

  4. jq插件第二款来袭 图片滚动

    这第二款也是非常实用的插件,也是与图片相关,关于图片的需求太多了,这个是图片滚动哦,不过不是无缝滚动,是左像右滚动,到头的话再往回滚动,利用scrollLeft实现的,支持自动滚动和每次滚动的个数默认 ...

  5. 开发中解决Access-Control-Allow-Origin跨域问题的Chrome神器插件,安装及使用

    背景: 笔者在用cordova开发安卓程序的时候在安卓设备上不存在跨域问题,但是在浏览器端模拟调试的时候却出现了Access-Control-Allow-Origin跨域问题,报错如下 No 'Acc ...

  6. sublime text3神器插件

    (首先安装)Package Control  Package Control,就像 Linux 下的 apt-get 和 yum 一样,它是 Sublime Text 的包管理器 1.Emmet 是一 ...

  7. [转]前端开发必备 40款优秀CSS代码编写工具推荐

    编写工具地址如下 英文地址:http://webtoolsdepot.com/40-css-tools-to-improve-your-productivity/ 中文地址:http://www.cs ...

  8. 堪称神器的Chrome插件

    前言 相信很多人都在使用 Chrome 浏览器,其流畅的浏览体验得到了不少用户的偏爱,但流畅只是一方面, Chrome 最大的优势还是其支持众多强大好用的扩展程序(Extensions).最近为了更好 ...

  9. 40个新鲜的 jQuery 插件,使您的网站用户友好

    作为最流行的 JavaScript 开发框架,jQuery 在现在的 Web 开发项目中扮演着重要角色,它简化了 HTML 文档遍历,事件处理,动画以及 Ajax 交互,这篇文章特别收集了40个新鲜的 ...

  10. idea中哪些好用到飞起的插件,偷懒神器

    idea中开发人员的偷懒神器-插件  本期推荐一些开发人员常用的一些idea插件.偷懒神器在此,不再秃头! 1. idea安装插件的方法.  file->setting->plugins ...

随机推荐

  1. 给 Ollama 穿上 GPT 的外衣

    上一篇我们介绍了如何在本地部署 ollama 运行 llama3 大模型.过程是相当简单的.但是现在给大模型交流只能在命令行窗口进行.这样的话就只能你自己玩了.独乐乐不如众乐乐嘛.我们接下来说一下如何 ...

  2. 如果一个接口不使用token鉴权,应该怎么保持在登录状态下进行测试?

    1.token是接口中用于身份验证和授权的令牌,用户通过登录操作,服务器会返回一个token,这个token会在后续的请求中发送到服务器,用来证明用户的身份和权限. 2.如果接口没有token,可以使 ...

  3. 深入解析 WezTerm 的自定义功能:键绑定和鼠标绑定

    WezTerm 是一个高性能的跨平台终端模拟器,它提供了广泛的自定义选项,包括键绑定和鼠标绑定,使得用户可以根据自己的需求优化操作界面.本文将详细介绍几个关键的自定义功能,解释它们的用途,并展示如何配 ...

  4. python query-string处理Query String Parameters参数

    $ [sudo] pip install query-string >>> import query_string >>> query_string.parse(' ...

  5. Myeclipse优化:自动转义字符串中的特殊字符

    在Myeclipse或者Eclipse中,将一段带引号(或其他的需要转义)字符串黏贴到引号中,双引号默认不会自动转义,手工一个一个去转义(变成\")的话实在是费事,这里记录一下让Myecli ...

  6. python 自动下载 moudle

    import sys,re,subprocess import os from subprocess import CalledProcessError new_set = set() ls = se ...

  7. zookeeper 分布式锁服务

    分布式锁服务在大家的项目中或许用的不多,因为大家都把排他放在数据库那一层来挡.当大量的行锁.表锁.事务充斥着数据库的时候.一般web应用很多的瓶颈都在数据库上,这里给大家介绍的是减轻数据库锁负担的一种 ...

  8. Mybatis【5】-- Mybatis多种增删改查那些你会了么?

    前面我们学会了Mybatis如何配置数据库以及创建SqlSession,那怎么写呢?crud怎么写? 代码直接放在Github仓库[https://github.com/Damaer/Mybatis- ...

  9. Electron(2) - 下载与解压缩

    1.下载文件 主线程中调用下载 win.webContents.downloadURL(url) 监听下载事件 //监听下载动作 win.webContents.session.on('will-do ...

  10. web移动端触屏事件

    1.移动端与pc端的区别 (1)移动端没有鼠标,自然也没有鼠标事件.所以onmousedown之类的事件监听在移动端时无效的. (2)移动端为了响应双击事件,onclick事件有300ms的延迟,接下 ...