记录一些IDEA开发中可能用到的插件库。

相关博文:

微信公众号:Java基基:如何个性化设置自己的 IntelliJ IDEA

第三部分内容:

微信公众号:匠心零度:整理了一些 IDEA 中比较骚的技巧,发现第一个就没用过!



插件安装:

IDEA下面安装插件是在File下面的setting中设置,如图:

一、插件

图片背景插件background Image Plus

插件名称叫background Image Plus,在插件里面搜索安装即可,如下图:

安装完重启后可以在菜单View下面的Set Background Image里面设置,选好本地一张图片设置下亮度和模式即可。



翻译插件Translation

开发的时候经常会遇到看不懂的英语单词,再去百度多麻烦,这里推荐这款翻译插件,插件名称叫做,安装后选中单词按下快捷键ALT+1即可。



CodeGlance右侧显示代码

在编辑代码最右侧,显示一块代码小地图 这款插件使用效果图如下,个人感觉还是有点用处,滚动条太小,有这个地图,拖动起来更加方便一点。

Grep Console自定义设置控制台输出颜色

Grep Console 自定义设置控制台输出颜色,这样控制台就能比较明显的看到警告或者错误的信息,方便查找问题。

Maven Helper

日常开发中,可能经常会遇到jar包冲突等问题,就需要通过查看maven依赖树来查看依赖情况。这种方式不是很高效,这里推荐一个插件,安装之后,直接打开pom文件,即可查看依赖数,还能自动分析是否存在jar包冲突。

一旦安装了Maven Helper插件,只要打开pom文件,就可以打开该pom文件的Dependency Analyzer视图(在文件打开之后,文件下面会多出这样一个tab)。

进入Dependency Analyzer视图之后有三个查看选项,分别是Conflicts(冲突)、All Dependencies as List(列表形式查看所有依赖)、All Dependencies as Tree(树结构查看所有依赖)。并且这个页面还支持搜索。

VisualVM Launcher-JYM分析工具

Java VisualVM 是 JDK 自带的图形化 JVM 分析工具,是进行 JVM 分析和调优的必备工具。在安装有 JDK 环境的设备上,在命令行输入jvisualvm命令就可以打开 Java VisualVM。如果你的 IDEA 安装了 VisualVM Launcher,右上方会新增几个按钮,直接点击就可以打开 Java VisualVM。

FindBugs-IDEA

可以对多种级别的内容进行finbugs。

分析完之后会有一个视图进行提示,详细的说明是哪种问题。

阿里巴巴代码规约检测

Java代码规约扫描插件以今年年初发布的《阿里巴巴Java开发规约》为标准,作为Eclipse、IDEA的插件形式存在,检测JAVA代码中存在不规范得位置然后给予提示。规约插件是采用kotlin语言开发的,感兴趣的同学可以去开看插件源码。

阿里巴巴规约插件包含三个子菜单:编码规约扫描、关闭试试检测功能。

并且,该插件支持在编写代码的同时进行提示,

String Manipulation

字符串日常开发中经常用到的,但是不同的字符串类型在不同的地方可能有一些不同的规则,比如类名要用驼峰形式、常量需要全部大写等,有时候还需要进行编码解码等。这里推荐一款强大的字符串转换工具——String Manipulation。

文本转换操作

切换样式(camelCase, hyphen-lowercase, HYPHEN-UPPERCASE, snake_case, SCREAMING_SNAKE_CASE, dot.case, words lowercase, Words Capitalized, PascalCase)

转换为SCREAMING_SNAKE_CASE (或转换为camelCase)

转换为 snake_case (或转换为camelCase)

转换为dot.case (或转换为camelCase)

转换为hyphen-case (或转换为camelCase)

转换为hyphen-case (或转换为snake_case)

转换为camelCase (或转换为Words)

转换为camelCase (或转换为lowercase words)

转换为PascalCase (或转换为camelCase)

选定文本大写

样式反转

Un/Escape

Un/Escape 选中的 java 文本

Un/Escape 选中的 javascript 文本

Un/Escape 选中的 HTML 文本

Un/Escape 选中的 XML 文本

Un/Escape 选中的 SQL 文本

Un/Escape 选中的 PHP 文本

将 diacritics(accents) 转换为 ASCII

将非ASCII 转换为转义的Unicode

将转义的Unicode转换为字符串

Encode/Decode

Encode 选中的文本为 MD5 Hex16

De/Encode 选中的文本为 URL

De/Encode 选中的文本为 Base64

递增/递减

递增/递减所有找到的数字

复制行并且递增/递减所有找到的数字

创建序列:保持第一个数字,递增替换所有其他数字

递增重复的数字

按自然顺序排序

按行倒序

按行随机排序

区分大小写A-z排序

区分大小写z-A排序

不区分大小写A-Z排序

不区分大小写Z-A排序

按行长度排序

通过子选择行排序:每行仅处理一个选择/插入符号

对齐

通过选定的分隔将选定的文本格式化为列/表格

将文本对齐为左/中/右

过滤/删除/移除

grep选定的文本,所有行不匹配输入文字将被删除。 (不能在列模式下工作)

移除选定的文本

移除选定文本中的所有空格

删除选定文本中的所有空格

删除重复的行

只保留重复的行

删除空行

删除所有换行符

其他

交换字符/选择/线/标记

切换文件路径分隔符:Windows < – > UNIX

安装好插件后,选中需要处理的内容后,按快捷键Alt+m,即可弹出工具功能列表。

Mybatis plugin

目前ORM框架中,Mybatis非常受欢迎。但是,同时给很多开发带来困扰的就是Mybatis需要很多xml的配置文件,有的时候很难去进行修改。

这里推荐一款神器,可以让你像编辑java代码一样编辑mybatis的文件。

Intellij Idea Mybatis插件主要功能:

提供Mapper接口与配置文件中对应SQL的导航

编辑XML文件时自动补全

根据Mapper接口, 使用快捷键生成xml文件及SQL标签

ResultMap中的property支持自动补全,支持级联(属性A.属性B.属性C)

快捷键生成@Param注解

XML中编辑SQL时, 括号自动补全

XML中编辑SQL时, 支持参数自动补全(基于@Param注解识别参数)

自动检查Mapper XML文件中ID冲突

自动检查Mapper XML文件中错误的属性值

支持Find Usage

支持重构从命名

支持别名

自动生成ResultMap属性

Key promoter X

Key Promoter X 是一个提示插件,当你在IDEA里面使用鼠标的时候,如果这个鼠标操作是能够用快捷键替代的,那么Key Promoter X会弹出一个提示框,告知你这个鼠标操作可以用什么快捷键替代。

当我使用鼠标查看一个方法都被哪些类使用的时候,就会提示:

AceJump

AceJump允许您快速将光标导航到编辑器中可见的任何位置,只需点击“ctrl +;”,然后输入一个你想要跳转到的字符,之后键入匹配的字符就跳转到你想要挑战的地方了。



如以上代码,我想在这个类中,跳转到println那个位置,只需要按下快捷键:“ctrl +;”,然后输入println,即可定位到目标位置。

上图中,我输入了pri三个字母后,页面提示三个可选项,分别用字母F、J、G标注,这时候只需要按下对应字母,即可快速定位到指定位置,是不是很方便。

activate-power-mode

二、使用技巧

ctrl+shift+enter不只是用来行尾加分号的

ctrl+shift+enter其实是表示为您收尾的意思,不只是用来给代码加分号的。比如说:

这段代码,我们还需要为if语句加上大括号才能编译通过,这个时候你直接输入ctrl+shift+enter,IDEA会自动帮你收尾,加上大括号的。

不要动不动就使用IDEA的重构功能

IDEA的重构功能非常强大,但是也有时候,在单个类里面,如果只是想批量修改某个文本,大可不必使用到重构的功能。比如说:

上面的代码中,有5个地方用到了rabbitTemplate文本,如何批量修改呢?

首先是使用ctrl+w选中rabbitTemplate这个文本,然后依次使用5次alt+j快捷键,逐个选中,这样五个文本就都被选中并且高亮起来了,这个时候就可以直接批量修改了。

强大的symbol

如果你依稀记得某个方法名字几个字母,想在IDEA里面找出来,可以怎么做呢?

直接使用ctrl+shift+alt+n,使用symbol来查找即可。

比如说:

你想找到checkUser方法。直接输入user即可。

如果你记得某个业务类里面有某个方法,那也可以使用首字母找到类,然后加个.,再输入方法名字也是可以的。

如何找目录

使用ctrl+shift+n后,使用/,然后输入目录名字即可.

自动生成not null判断语句

自动生成not null这种if判断,在IDEA里有很多种办法,其中一种办法你可能没想到。



当我们使用rabbitTemplate. 后,直接输入notnull并回车,IDEA就好自动生成if判断了。

按照模板找内容

这个也是我非常喜欢的一个功能,可以根据模板来找到与模板匹配的代码块。比如说:

想在整个工程里面找到所有的try catch语句,但是catch语句里面没有做异常处理的。

catch语句里没有处理异常,是极其危险的。我们可以IDEA里面方便找到所有这样的代码。

首先使用ctrl+shift+A快捷键弹出action框,然后输入Search Struct

选择Search Structurally后,回车,跳转到模板视图。

点击Existing Templates按钮,选择try模板。为了能找出catch里面没有处理异常的代码块,我们需要配置一下CatchStatement的Maximum count的值,将其设置为1。

点击Edit Variables按钮,在界面修改Maximum count的值。

最后点击find按钮,就可以找出catch里面没有处理异常的代码了。

三、IDEA技巧

原文地址:乔志勇笔记 匠心零度

3.1var 声明

3.2null 判空

3.3notnull 判非空

3.4nn 判非空

3.5for 遍历

3.6fori 带索引的遍历

3.7not 取反

3.8if 条件判断

3.9cast 强转

3.10return 返回值

IDEA插件及相关使用技巧的更多相关文章

  1. 【转贴】gdb中的信号(signal)相关调试技巧

    一篇不错的帖子,讲的是gdb中的信号(signal)相关调试技巧 转自Magic C++论坛  http://www.magicunix.com/index_ch.html  http://www.m ...

  2. 前端html、CSS快速编写代码插件-Emmet使用方法技巧详解

    前端html.CSS快速编写代码插件-Emmet使用方法技巧详解   Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来 ...

  3. 快速开发 jQuery 插件的 10 大技巧(转)

    1. 把你的代码全部放在闭包里面 这是我用的最多的一条.但是有时候在闭包外面的方法会不能调用.不过你的插件的代码只为你自己的插件服务,所以不存在这个问题,你可以把所有的代码都放在闭包里面.而方法可能应 ...

  4. JS、JQ相关小技巧积攒

    JS.JQ相关小技巧积攒,以备不时之需. 1.js 获取时间差:时间戳相减.new Date().getTime()  获得毫秒数,除以(1000*60*60*24) 获得天数. 2.重定向操作:页面 ...

  5. 快速开发 jQuery 插件的 10 大技巧

    在开发过很多 jQuery 插件以后,我慢慢的摸索出了一套开发jQuery插件比较标准的结构和模式.这样我就可以 copy & paste 大部分的代码结构,只要专注最主要的逻辑代码就行了. ...

  6. 快速开发 jQuery 插件的 10 大技巧(转)

    转自:http://www.oschina.net/news/41776/jquery-10-tips 在开发过很多 jQuery 插件以后,我慢慢的摸索出了一套开发jQuery插件比较标准的结构和模 ...

  7. 编写优秀jQuery插件的10个技巧

    前言:在开发过很多 jQuery 插件以后,我慢慢的摸索出了一套开发jQuery插件比较标准的结构和模式.这样我就可以 copy & paste 大部分的代码结构,只要专注最主要的逻辑代码就行 ...

  8. JQuery插件datatables相关api

    学习可参考:http://www.guoxk.com/node/jquery-datatables http://yuemeiqing2008-163-com.iteye.com/blog/20069 ...

  9. sublime text3配置及相关小技巧

    1.下载&安装: 官方地址:http://www.sublimetext.com/,sublime text3又更新了,支持不依赖插件进行侧边栏颜色的更改,同时自带的皮肤颜色也有四种,十分方便 ...

随机推荐

  1. Thymeleaf语法总结 | 笔记分享

    Thymeleaf语法总结 一.Thymeleaf介绍 Thymeleaf是Spring boot推荐使用的模版引擎,直接以html显示,前后端可以很好的分离.   二.Thymeleaf语法(Thy ...

  2. 每日一个linux命令4

    mkdir命令 linux mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录. mkdir test    创建一个空目录 ...

  3. 论文阅读 Characterization of Multiple 3D LiDARs for Localization and Mapping using Normal Distributions Transform

    Abstract 在这个文章里, 我们细致的比较了10种不同的3D LiDAR传感器, 用了一般的 Normal Distributions Transform (NDT) 算法. 我们按以下几个任务 ...

  4. JavaScript基础知识梳理

    一.简单数据类型 Number.String.Boolean.Undefined.Null 1.Number: 方法: toPrecision( ) 返回指定长度的数字(范围是1到100) toFix ...

  5. hbase读写优化

    一.hbase读优化 客户端优化 1.scan缓存是否设置合理? 优化原理:一次scan请求,实际并不会一次就将所有数据加载到本地,而是多次RPC请求进行加载.默认100条数据大小. 优化建议:大sc ...

  6. .NET 云原生架构师训练营(模块二 基础巩固 RabbitMQ HelloWorld)--学习笔记

    2.6.3 RabbitMQ -- HelloWorld 发送端 接收端 rabbitmq container 发送信息 https://www.rabbitmq.com/tutorials/tuto ...

  7. html 垂直并列显示

    笔者在制作登陆网页的时候,发现让input居中十分困难,笔者在网上搜了好久都没有结果,所以就想出了一个硬核的纯html的解决方法 直接上代码: <div style="text-ali ...

  8. springboot项目打war包流程

    目前,前后端分离的架构已成主流,因此使用springboot构建应用是非常快速的,项目发布到服务器上的时候,只需要打成一个jar包,然后通过命令 : java -jar jar包名称即可启动服务了:但 ...

  9. 使用SharePoint App-Only获得访问权限

    目前在开发SharePoint Online的过程中,主要使用通过Azure AD的方式获得应用的访问权限,但是SharePoint App-Only的方式依旧被保留了.使用这种方式进行CSOM开发比 ...

  10. 对微信小程序的生命周期进行扩展 – Typescript 篇

    最近利用业余时间倒腾了一个微信小程序,主要目的是横向比较一些业界小程序平台的架构和做法.因为有在其他平台长期的开发经验,对于小程序的一些机制做了一些辩证的思考.例如,小程序的页面,其实不是一个页面,而 ...