一、插件安装

settings→plugins→直接搜索框搜索,没有选择Browse Respositories→找到需要安装的插件,install即可

二、常用插件

插件名称

简介

地址

备注

 

Statistic

代码统计

地址

开启视图:View→Tool windows 找到即可

 

Key promoter

快捷键提示

地址

感觉有点鸡肋

 

CheckStyle-IDEA

代码规范检查

地址

参看以前的帖子

 

FindBugs-IDEA

潜在 Bug 检查

地址

参看以前的帖子

 

MetricsReloaded 

代码复杂度检查

地址

 使用menu →Analyze → Calculate Metrics

 

JRebel Plugin

热部署

地址

 

 

CodeGlance 

代码概览

地址

 在编辑代码最右侧,显示一块代码小地图

 

GsonFormat   

把 JSON 字符串直接实例化成类

地址

 

 

Eclipse Code Formatter

eclipse代码风格

地址

 使用 Eclipse 的代码格式化风格,在一个团队中如果公司有规定格式化风格,这个可以使用。

 

lombok

注解方式简化代码

地址

文档
http://jnb.ociweb.com/jnb/jnbJan2010.htmlmaven地址:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.14</version>
</dependency>


功能概述:

@Getter / @Setter
  可以作用在类上和属性上,放在类上,会对所有的非静态(non-static)属性生成Getter/Setter方法,放在属性上,会对该属性生成Getter/Setter方法。
并可以指定Getter/Setter方法的访问级别。

@EqualsAndHashCode
  默认情况下,会使用所有非瞬态(non-transient)和非静态(non-static)字段来生成equals和hascode方法,也可以指定具体使用哪些属性。
@ToString
  生成toString方法,默认情况下,会输出类名、所有属性,属性会按照顺序输出,以逗号分割。
@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor
  无参构造器、部分参数构造器、全参构造器,当我们需要重载多个构造器的时候,Lombok就无能为力了。
@Data
  @ToString, @EqualsAndHashCode, 所有属性的@Getter, 所有non-final属性的@Setter和@RequiredArgsConstructor的组合,
通常情况下,我们使用这个注解就足够了。
@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
@Cleanup:关闭流 
@Synchronized:对象同步 
@SneakyThrows:抛出异常

 

原理
1.运行时解析
运行时能够解析的注解,必须将@Retention设置为RUNTIME,这样可以通过反射拿到该注解。java.lang.reflect反射包中提供了一个接口AnnotatedElement,
该接口定义了获取注解信息的几个方法,Class、Constructor、Field、Method、Package等都实现了该接口,大部分开发者应该都很熟悉这种解析方式。


boolean isAnnotationPresent(Class<? extends Annotation> annotationClass);
<T extends Annotation> T getAnnotation(Class<T> annotationClass);
Annotation[] getAnnotations();
Annotation[] getDeclaredAnnotations();



2.编译时解析

2.1、Annotation Processing Tool

  apt自JDK5产生,JDK7已标记为过期,不推荐使用,JDK8中已彻底删除,自JDK6开始,可以使用Pluggable Annotation Processing API来替换它,

apt被替换主要有2点原因:

api都在com.sun.mirror非标准包下

没有集成到javac中,需要额外运行

  apt的更多介绍可以参见这里。

2.2、Pluggable Annotation Processing API

  JSR 269,自JDK6加入,作为apt的替代方案,它解决了apt的两个问题,javac在执行的时候会调用实现了该API的程序,这样我们就可以对编译器做一些增强,

这时javac执行的过程如下: 这里写图片描述

javadoc插件 includes java常用插件_运维

  Lombok就是使用这种方式实现的,有兴趣的话可以去看看其Lombok源码,对应注解的实现都在HandleXXX中,
比如@Getter注解的实现是HandleGetter.handle()。
还有一些其它类库使用这种方式实现,比如Google Auto、Dagger等等。

 缺点:无法支持多种参数构造器的重载

 

 UML类图插件

 

 

【settings→plugins 找到选中,UML】

使用:类上右键,diagram

 

 SSH集成

 

 

【settings→plugins 找到选中,SSH】 Tools→Start SSH Sessions

 

 Database

 数据库连接工具

 

 

 

actiBPM

工作流插件

 

 

 

maven helper

maven帮助插件

 

在pom上右键会有run maven,

删除goal,perferences→other setting→maven helper

 

sonarlint 

 代码扫描

地址

SonarQube(曾用名Sonar)之前的提供的本地工具是需要依赖SonarQube服务器的,这样导致其运行速度缓慢。 
新出的SonarLint的扫描引擎直接安装在本地,速度超快,实时探测代码技术债务,给程序员最快速的反馈,排除代码异味的绝佳利器,帮助程序员获得Clean code。 
新版SonarLint也能链接SonarQube服务器,但这并不必要。 
本地安装SonarLint来做代码本地扫描,本地发现本地修改,而且能快速看到修改结果,快速处理代码臭味,有效控制技术债务。

使用Sonarlint只需要将其SonarLint Issues打开,打开方法是 “windows”->”Show View” -> “Others…” 中选择“SonarLint Issues”。
选择相应Java文件,SonarLint自动分析,分析结果几乎实时显示在SonarLint Issues中,在有问题的代码下方也有提示。

 

restfultoolkit

rrestful服务地址查找