0
点赞
收藏
分享

微信扫一扫

工具篇——idea开发必备插件


1、Maven Helper

分析依赖冲突插件

此插件可用来方便显示maven的依赖树,在没有此插件时,如果想看maven的依赖树需要输入命令行: mvn dependency:tree  才可查看依赖。如果想看是否有依赖包冲突的话也需要输入命令行等等的操作。而如果安装Maven Helper插件就可免去命令行困扰。通过界面即可操作完成。

使用方式:

打开项目中的pom文件,在底部会显示一个“Dependency Analyzer”,

工具篇——idea开发必备插件_ide

可进行相应操作:

  • Conflicts(查看冲突)
  • All Dependencies as List(列表形式查看所有依赖)
  • All Dependencies as Tree(树形式查看所有依赖)
  • 搜索功能

2、Free Mybatis plugin

方便在Mapper接口方法和Mapper XML文件之间来回切换的插件

工具篇——idea开发必备插件_快捷键_02

工具篇——idea开发必备插件_快捷键_03

点击左侧箭头,即可在mapper和对象xml之间跳转,idea中到实现类的快捷键也可支持

其他功能

  1. 支持生成语句,@Param注释和xml映射器【 快捷键 映射器接口声明,方法或参数 Option + Enter(Mac)| Alt + Enter(Windows)】
  2. mybatis自动补全及语法错误提示

3、JRebel for Intellij

热部署插件,修改完代码后,不用重新启动,非常实用。但是非免费,靠大家的财力和智慧吧。

工具篇——idea开发必备插件_ide_04

启动或者debug的时候,使用上图标注的即可,每次修完class后,mac快捷键 command+F9 或者Ctrl+F9重新加载类即可。

4、Lombok

Lombok能以简单的注解形式来简化java代码,提高开发人员的开发效率。例如开发中经常需要写的javabean,都需要花时间去添加相应的getter/setter,也许还要去写构造器、equals等方法,而且需要维护,当属性多时会出现大量的getter/setter方法,这些显得很冗长也没有太多技术含量,一旦修改属性,就容易出现忘记修改对应方法的失误。Lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、equals、hashcode、toString方法。
在使用之前需要在项目中添加lombok依赖

<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>

5、GsonFormat

GSON是google推出的一个实现 JSON 与 Java 对象间转化的库,它可以轻松实现 JSON 与 Java 对象间的转换

创建一个空类进行下图操作,或者快捷键option+s,即可快速根据json生成对应model内容

工具篇——idea开发必备插件_intellij idea_05

工具篇——idea开发必备插件_intellij idea_06

生成model如下

import java.util.List;

public class JsonTest {

/**
* animals : {"dog":[{"name":"Rufus","breed":"labrador","count":1,"twoFeet":false},{"name":"Marty","breed":"whippet","count":1,"twoFeet":false}],"cat":{"name":"Matilda"}}
*/

private AnimalsBean animals;

public AnimalsBean getAnimals() {
return animals;
}

public void setAnimals(AnimalsBean animals) {
this.animals = animals;
}

public static class AnimalsBean {
/**
* dog : [{"name":"Rufus","breed":"labrador","count":1,"twoFeet":false},{"name":"Marty","breed":"whippet","count":1,"twoFeet":false}]
* cat : {"name":"Matilda"}
*/

private CatBean cat;
private List<DogBean> dog;

public CatBean getCat() {
return cat;
}

public void setCat(CatBean cat) {
this.cat = cat;
}

public List<DogBean> getDog() {
return dog;
}

public void setDog(List<DogBean> dog) {
this.dog = dog;
}

public static class CatBean {
/**
* name : Matilda
*/

private String name;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
}

public static class DogBean {
/**
* name : Rufus
* breed : labrador
* count : 1
* twoFeet : false
*/

private String name;
private String breed;
private int count;
private boolean twoFeet;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getBreed() {
return breed;
}

public void setBreed(String breed) {
this.breed = breed;
}

public int getCount() {
return count;
}

public void setCount(int count) {
this.count = count;
}

public boolean isTwoFeet() {
return twoFeet;
}

public void setTwoFeet(boolean twoFeet) {
this.twoFeet = twoFeet;
}
}
}
}

如果项目中使用了lombok,不希望生成get set方法,在setting中选择Lombok即可解决

6、Statistic

代码统计工具,可以查看代码总行数,各类文件的代码行数、空行等等。非常方便用于排查项目中无用类目

工具篇——idea开发必备插件_java_07

7、Alibaba Java Coding Guidelines

阿里巴巴开发代码检测插件,检测代码中的坏味道,分为Blocker/Critical/Major三个等级对应为snoar中前三个崩溃/严重/重要 ,前两级必须解决掉。

工具篇——idea开发必备插件_intellij idea_08

工具篇——idea开发必备插件_快捷键_09

8、Key promoter X

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

标注有通过鼠标操作次数,以及对应的快捷键

工具篇——idea开发必备插件_快捷键_10

9、Restfultookit 

根据url查找Controller

1.根据 URL 直接跳转到对应的方法定义 ( Ctrl \ or Ctrl Alt N );
2.提供了一个 Services tree 的显示窗口;
3.一个简单的 http 请求工具;
4.在请求方法上添加了有用功能: 复制生成 URL;,复制方法参数...

工具篇——idea开发必备插件_快捷键_11

工具篇——idea开发必备插件_java_12

demo展示

Full URL
http://localhost:8086/educational/account/accountList?studentCode=demoData&studentName=demoData&cityCode=demoData&phone=demoData

Relation URL
/account/refundApply?accountId=demoData&userBizId=demoData&userId=demoData&userName=demoData&mobile=demoData&email=demoData&areaCode=demoData&areaName=demoData&departmentId=demoData

RequestBody(json)
{
"cityCode": "demoData",
"studentId": "demoData",
"studentName": "demoData",
"accountId": "demoData",
"schoolId": "demoData",
"totalAmount": 1,
"amount": 1,
"totalTaxAmount": 1,
"refundName": "demoData",
"refundTypeId": "demoData",
"refundPhone": "demoData",
"refundReason": "demoData",
"billType": 1,
"idcardFilePath": "demoData",
"offFilePath": "demoData",
"details": {
"accountFinanceId": "demoData",
"status": 1,
"remark": 1,
"cardHolderName": "demoData",
"bankName": "demoData",
"bankNo": "demoData",
"city": "demoData",
"province": "demoData",
"bankType": "demoData",
"bankTypeName": "demoData"
},
"allowRefundMoney": 1,
"bankFilePath": "demoData",
"channel": 1
}
Query Param(key value)
accountId=demoData&userBizId=demoData&userId=demoData&userName=demoData&mobile=demoData&email=demoData&areaCode=demoData&areaName=demoData&departmentId=demoData

后续有很好用的插件还会继续更新,致力于提升研发效率!

举报

相关推荐

0 条评论