idea 插件的使用 进阶篇(个人收集使用中的) 
恭喜你,如果你已经看到这篇文章,证明在idear使用上已经初有小成!那么就要向着大神进发了! 
下边就是大神之路! 
插件的设置 
在 IntelliJ IDEA 的安装讲解中我们其实已经知道,IntelliJ IDEA 本身很多功能也都是通过插件的方式来实现的,只是 IntelliJ IDEA 本身就是它自己的插件平台最大的开发者而已,开发了很多优秀的插件。 
• 官网插件库:https://plugins.jetbrains.com/ 

• 如上图标注 1 所示,IntelliJ IDEA 对插件进行了很好的分类: 
• All plugins 显示所有插件。 
• Enabled 显示当前所有已经启用的插件。 
• Disabled 显示当期那所有已经禁用的插件。 
• Bundled 显示所有 IntelliJ IDEA 自带的插件。 
• Custom 显示所有我们自行安装的插件,如果你自己装了很多次插件的话,这个选项会用得比较多。 
• 如上图标注 2 所示,启用的插件是被勾选的,如果要禁用一个插件,去掉勾选即可。 
• 如上图标注 3 所示,弹出 IntelliJ IDEA 公司自行开发的插件仓库列表,供下载安装。 
• 如上图标注 4 所示,弹出插件仓库中所有插件列表供下载安装。 
• 如上图标注 5 所示,浏览本地的插件文件进行安装,而不是从服务器上下载并安装。 
• 需要严重注意的是:在国内的网络下,很经常出现显示不了插件列表,或是显示了插件列表,无法下载完成安装。这时候请自行开VPN,一般都可以得到解决。



• 如上图红圈所示,如果 IntelliJ IDEA 打开一个它可以识别并且支持的文件类型,它会提示你它有对应的插件进行支持,你可以安装对应的插件来加以兼容此类文件。 
插件的安装 

• 如上图 Gif 演示,在线安装 IntelliJ IDEA 插件库中的插件。 

• 如上图 Gif 演示,离线安装本地插件文件。 
插件名称 插件介绍 官网地址 
Key promoter 快捷键提示 https://plugins.jetbrains.com/plugin/4455?pr=idea

CamelCase 驼峰式命名和下划线命名交替变化 https://plugins.jetbrains.com/plugin/7160?pr=idea

CheckStyle-IDEA 代码规范检查 https://plugins.jetbrains.com/plugin/1065?pr=idea

FindBugs-IDEA 潜在 Bug 检查 https://plugins.jetbrains.com/plugin/3847?pr=idea

MetricsReloaded 代码复杂度检查 https://plugins.jetbrains.com/plugin/93?pr=idea

Statistic 代码统计 https://plugins.jetbrains.com/plugin/4509?pr=idea

JRebel Plugin 热部署 https://plugins.jetbrains.com/plugin/?id=4441

CodeGlance 在编辑代码最右侧,显示一块代码小地图 https://plugins.jetbrains.com/plugin/7275?pr=idea

GsonFormat 把 JSON 字符串直接实例化成类 https://plugins.jetbrains.com/plugin/7654?pr=idea

Eclipse Code Formatter 使用 Eclipse 的代码格式化风格,在一个团队中如果公司有规定格式化风格,这个可以使用。 https://plugins.jetbrains.com/plugin/6546?pr=idea

Ace Jump AceJump其实是一款能够代替鼠标的软件,只要安装了这款插件,可以在代码中跳转到任意位置。按快捷键进入 AceJump 模式后(默认是 Ctrl+J),再按任一个字符,插件就会在屏幕中这个字符的所有出现位置都打上标签,你只要再按一下标签的字符,就能把光标移到该位置上。换言之,你要 移动光标时,眼睛一直看着目标位置就行了,根本不用管光标的当前位置。 
lombok 如果你在用 Lombok,就得装个这个插件啦,省掉一堆 getter、setter,有关 Lombok 的详细介绍参考 使用 Lombok 来缩减 Java 代码 
LiveEdit Intellij IDEA 默认自动保存的,根本不用 Ctrl+s, 
LiveEdit 能自动更新浏览器里的网页,所以F5也省了

如果是是双屏的话,基本上所见即所得了 
IdeaJad 反编译工具 
GenerateToString 
JUnitGenerator 
WebServicePlugin 
JarTool 
GenerateSerialVersionUID 
FindBugs FindBugs 通过检查类文件或 JAR 文件,将字节码与一组缺陷模式进行对比从而发现代码缺陷,完成静态代码分析,可以找出常见的 bug 或者可能潜在 bug 的地方。 
Jrebel 热部署神器,改完代码直接生效,不用重启啦! 
具体参考 利用Jrebel热部署提升工作效率 
可以切换变量命名风格,如 SogouInc、sogouInc、sogou—inc、SOGOU_INC

一、与JIRA集成 
jira是一个广泛使用的项目与事务跟踪工具,被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等工作领域。idea可以很好的跟它集成,参考下图: 
File -> Settings ->Task -> Servers 点击右侧上面的+号,选择JIRA,然后输入JIRA的Server地址,用户名、密码即可 

然后打开Open Task界面 
 
如果JIRA中有分配给你的Task,idea能自动列出来 
 
代码修改后,向svn提交时,会自动与该任务关联 

将每次提交的代码修改与JIRA上的TASK关联后,有什么好处呢? 我们每天可能要写很多代码,修复若干bug,日子久了以后,谁也不记得当初为了修复某个bug做了哪些修改,不要紧张,只要你按上面的操作正确提交,idea都会帮你记着这些细节 
 
如上图,选择最近提交的TASK列表,选择Switch to,idea就会自动打开该TASK关联的源代码,并定位到修改过的代码行。当然如果该TASK已经Close了,也可以选择Remove将其清空。

二、UML类图插件 
idea已经集成了该功能,只是默认没打开,仍然打开Settings界面,定位到Plugins,输入UML,参考下图: 

确认UML 这个勾已经勾上了,然后点击Apply,重启idea,然后仍然找一个java类文件,右击Diagram 

然后,就自个儿爽去吧 

三、SSH集成 
java项目经常会在Linux上部署,每次要切换到SecureCRT这类终端工具未免太麻烦,idea也想到了这一点: 
 
然后填入IP、用户名、密码啥的 
 
点击OK,就能连接上linux了 

注:如果有中文乱码问题,可以在Settings里调整编码为utf-8 

四、集成FTP 
 
点击上图中的…,添加一个Remote Host 

填写ftp的IP、用户名、密码,根路径啥的,然后点击Test FTP Connection,正常的话,应该能连接,如果连接不通,点击Advanced Options,参考下图调整下连接选项 
 
配置了FTP连接后,在提交代码时,可以选择提交完成后将代码自动上传到ftp服务器 

五、Database管理工具 
先看效果吧: 

有了这个,再也不羡慕vs.NET的db管理功能了。配置也很简单,就是点击+号,增加一个Data Source即可 

唯一要注意的是,intellij idea不带数据库驱动,所以在上图中,要手动指定db driver的jar包路径。

六、CheckStyle-IDEA 
通过检查对代码编码格式,命名约定,Javadoc,类设计等方面进行代码规范和风格的检查,从而有效约束开发人员更好地遵循代码编写规范。 
软件安装成功之后,首先要设置规则。可以通过 
Preferences—>Other Settings —>CheckStyles 
进行设置,可以直接将文件添加进来,然后就可以对具体的文件进行检查了。 

同样,该插件也有个单独的视图,该视图可以展示检查结果。 
 
配置checkstyle 
File->Setting->Other Setting->checkStyle至下图界面 
 
点击红框选中的绿色加号至上层页面添加自定义的检查规则,选择附件中的my_checks.xml,Next,Finish后至下图。

 
选中新添加的检查规则,并Apply即可。 
使用checkStyle检查文件 
在File->Setting->Editor->CheckStyle中选择是否进行实时检查。 

(1) 实时检查,实时地对不规范的书写进行提示 ,并在编辑页面中进行颜色标识。 
(2) 取消实时检查后,可在打开的文件中右击选择Check Current File对当前页面进行检查,此时可在下图所示的CheckStyle Scan 中查看不规范内容,点击条目可查看对应出错语句。 
 
其他 
如有一些必须的但不符合检查规则的地方需要忽略检查可以按照下述进行注释 
// CSOFF: MagicNumber 
需要忽略的代码段 
// CSON: MagicNumber 
其中MagicNumber为检查的一个步骤,表示检查魔法数,可以替换成其他的检查步骤,比如要忽略该段的行长度,可将MagicNumber改为LineLength即可。

七、lombok 注解:

lombok 提供的注解不多,可以参考官方视频的讲解和官方文档。
Lombok 注解在线帮助文档:http://projectlombok.org/features/index.
下面介绍几个我常用的 lombok 注解:
@Data :注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
@Setter:注解在属性上;为属性提供 setting 方法
@Getter:注解在属性上;为属性提供 getting 方法
@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
@NoArgsConstructor:注解在类上;为类提供一个无参的构造方法
@AllArgsConstructor:注解在类上;为类提供一个全参的构造方法

@EqualsAndHashCode:实现equals()方法和hashCode()方法 
@ToString:实现toString()方法 
@Cleanup:关闭流 
@Synchronized:对象同步 
@SneakyThrows:抛出异常

下面是简单示例 
1.不使用 lombok 的方案 

2 public class Person { 

4 private String id; 
5 private String name; 
6 private String identity; 
7 private Logger log = Logger.getLogger(Person.class); 

9 public Person() { 
10 
11 } 
12 
13 public Person(String id, String name, String identity) { 
14 this.id = id; 
15 this.name = name; 
16 this.identity = identity; 
17 } 
18 
19 public String getId() { 
20 return id; 
21 } 
22 
23 public String getName() { 
24 return name; 
25 } 
26 
27 public String getIdentity() { 
28 return identity; 
29 } 
30 
31 public void setId(String id) { 
32 this.id = id; 
33 } 
34 
35 public void setName(String name) { 
36 this.name = name; 
37 } 
38 
39 public void setIdentity(String identity) { 
40 this.identity = identity; 
41 } 
42 } 
43

2.使用 lombok 的方案


2 @Data 
3 @Log4j 
4 @NoArgsConstructor 
5 @AllArgsConstructor 
6 public class Person { 

8 private String id; 
9 private String name; 
10 private String identity; 
11 
12 } 
13

上面的两个 java 类,从作用上来看,它们的效果是一样的,相比较之下,很明显,使用 lombok 要简洁许多,特别是在类的属性较多的情况下, 
同时也避免了修改字段名字时候忘记修改方法名所犯的低级错误。最后需要注意的是,在使用 lombok 注解的时候记得要导入 lombok.jar 包到工程

idea 插件的使用 进阶篇(个人收集使用中的)的更多相关文章

  1. idea 插件的使用 进阶篇

    CSDN 2016博客之星评选结果公布    [系列直播]零基础学习微信小程序!      "我的2016"主题征文活动   博客的神秘功能 idea 插件的使用 进阶篇(个人收集 ...

  2. 2. web前端开发分享-css,js进阶篇

    一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无从下手 ...

  3. web前端开发分享-css,js进阶篇

    一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践 经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无 从 ...

  4. form表单那点事儿(下) 进阶篇

    form表单那点事儿(下) 进阶篇 上一篇主要温习了一下form表单的属性和表单元素,这一片主要讲解用JavaScript如何操作form. 目录: 表单操作 取值 赋值 重置 校验 提交 技巧 不提 ...

  5. Java IDE 编辑器 --- IntelliJ IDEA 进阶篇 生成 hibernate 实体与映射文件

    原文:转:Java IDE 编辑器 --- IntelliJ IDEA 进阶篇 生成 hibernate 实体与映射文件 2011-04-30 12:50 很多人不知道怎么用 IntelliJ IDE ...

  6. 从零开始学Sketch——进阶篇-b

    从零开始学Sketch——进阶篇 Sketch是一款矢量绘图应用,而矢量绘图无疑是目前进行网页.图标以及界面设计的最好方式. 在初识了Sketch的界面布局和基础工具之后,我们就可以开始进入高阶的Sk ...

  7. python进阶篇

    python进阶篇 import 导入模块 sys.path:获取指定模块搜索路径的字符串集合,可以将写好的模块放在得到的某个路径下,就可以在程序中import时正确找到. ​ import sys ...

  8. [Android Pro] AndroidStudio IDE界面插件开发(进阶篇之Editor)

    转载请注明出处:[huachao1001的专栏:http://blog.csdn.net/huachao1001/article/details/53885981] 我们开发AndroidStudio ...

  9. 从零开始学Sketch——进阶篇

    本文转自 http://www.jianshu.com/p/ff70b5f35c8f 从零开始学Sketch——进阶篇 Sketch是一款矢量绘图应用,而矢量绘图无疑是目前进行网页.图标以及界面设计的 ...

随机推荐

  1. [转帖] YAML 快速入门

    https://www.jianshu.com/p/97222440cd08 原始文档更加易读. YAML快速入门 叩丁狼教育 关注 2018.02.18 19:19* 字数 1776 阅读 876评 ...

  2. [日常工作]Win2008r2 以及更高版本的操作系统安装Oracle10.2.0.5

    1. 当时有特殊需求, 客户有win2008r2sp1以上的windows系统,但是数据库要使用Oracle10.2.0.5 的版本. 问题: 1. Oracle10 最高支持到 Win2008sp2 ...

  3. delphi try except语句 和 try finally语句用法以及区别

    try//尝试执行{SomeCode} except//出错的时候执行, Except有特定的错误类型 {SomeCode} end; try//尝试执行{SomeCode} finally//无论如 ...

  4. 【转】SpringMVC,获取request的几种方法,及线程安全性

    作者丨编程迷思 https://www.cnblogs.com/kismetv/p/8757260.html 概述 在使用Spring MVC开发Web系统时,经常需要在处理请求时使用request对 ...

  5. xml和对象 转换

    //测试数据 static List<User> list = new List<User>() { new User(){id=1001 ,name="语文&quo ...

  6. Tree 菜单 递归

    转载:http://www.cnblogs.com/igoogleyou/archive/2012/12/17/treeview2.html 一,通过查询数据库的方法 ID 为主键,PID 表明数据之 ...

  7. day6 字典

    字典的创建方式 注意 字典是无序的 1. dic{"name":"yang","age":35} 常用还是用这个 2. dic3 = dic ...

  8. Leetcode 461.汉明距离 By Python

    两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目. 给出两个整数 x 和 y,计算它们之间的汉明距离. 注意: 0 ≤ x, y < 231. 示例: 输入: x = 1, y ...

  9. 14 Zabbix Item类型之Simple checks类型

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 14 Zabbix Item类型之Simple checks类型 Simple checks通常用 ...

  10. 自学Aruba6.1-基本网络参数配置(web页面配置)

    点击返回:自学Aruba之路 自学Aruba6.1-基本网络参数配置(web页面配置) 1 配置VLAN 1.1  新建VLAN Configuration---VLANs中,VLANID选项卡下的A ...