Idea常用插件
1 阿里代码规约检查
Alibaba Java Coding Guidelines
2 lombok
一个在编译阶段修改增强Java类的工具,使用方式基于注解,常用于:
- 为Java POJO生成属性对应的getter,setter等
- 为Java POJO生成builder构造器模式的实现
- 为Java类自动添加其他重复性代码,比如日志记录的声明代码可以通过@Slf4j注解添加
项目中是否引入Lombok一直是个存在争议,它的主要优势在于消除Java类的部分臃肿代码,提高开发效率,降低代码维护成本;缺点是需要IDE插件支持,需要团队统一规范,另外某些注解生成的隐性实现可能导致问题跟踪调试困难。
第一步 下载插件
开启编译,防止编译时出错
使用前需引入依赖
第二步:引入 lombok
1 | <dependency> |
使用:
@Data:注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法,相当于同时加上以下注解@Setter @Getter,@ToString,@EqualsAndHashCode
@Setter、@Getter:注解在类和属性上;为属性提供 setting、getting 方法
@ToString:生成toString方法,默认情况下,会输出类名、所有属性,属性按照顺序输出,以逗号分割。
@EqualsAndHashCode:实现equals()方法和hashCode()方法
@Builder:构建 建造者模式
@NonNull:该注解快速判断是否为空,如果为空,则抛出java.lang.NullPointerException
@Synchronized:该注解自动添加到同步机制,有趣的是,生成的代码并不是直接锁方法,而是锁代码块, 作用范围是方法上
@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
@NoArgsConstructor:注解在类上;为类提供一个无参的构造方法
@RequiredArgsConstructor:_注解在类上;为类提供一个部分参的构造方法(使用类中所有带有@NonNull注解的或者带有final修饰的成员变量生成对应的构造方法)
@AllArgsConstructor:注解在类上;为类提供一个全参的构造方法
@Cleanup:用于确保已分配的资源被释放,如IO的连接关闭
@SneakyThrows:抛异常
@Accessors(chain = true):使用链式结构
3 Free Mybatis plugin
Free Mybatis plugin 方便于在Mapper接口与XML文件之间进行跳转。
4 Maven Helper
手动打依赖树,使用 mvn dependency : tree 查看太过于繁琐。
Maven Helper是一个将maven依赖树可视化的插件,可以方便的查看依赖以及处理依赖冲突问题。对经常使用maven的同学来说可以说是神器。
安装好后,在 pom.xmlwe文件底部会多出一个 Dependency Analyzer选项
点开后:
找到冲突,点击右键,然后选择Exclude即可排除冲突版本的Jar包。
除此之外,还可以用Idea自带的——————Maven依赖结构图,打开Maven窗口,选择Dependencies,然后点击那个图标(Show Dependencies)或者使用快捷键(Ctrl+Alt+Shift+U),即可打开Maven依赖关系结构图
在图中,我们可以看到有一些红色的实线,这些红色实线就是依赖冲突,蓝色实线则是正常的依赖。
5 GsonFormat
GsonFormat插件将JSONObject格式的字符串解析成实体,自动生成实体类。
自定义个javaBean(无任何内容,就一个空的类)
复制你要解析的json
然后alt+insert弹出如下界面 或者使用快捷键 alt+s
通过快捷键调出该插件
粘贴到如下界面:
点击ok,自动生成对应javaBean的代码:
6 GenerateAllSetter
方法: 在实例上 使用 alt + enter
GenerateAllSetter是一键调用一个对象的所有set方法并且赋予默认值的插件。在对象字段 多的时候非常方便,相当给力。
7 BashSupport
一个可以编写调试shell脚本的插件。
使用插件执行脚本
8 PlantUml
PlantUml是一个画类图、时序图等的一个插件。
9 Mybatis-log-plugin
开发的项目一般都少不了日志系统,而我们在书写mysql语句的时候,参数的对应,往往有时候会忽略,mybatis自己控制的参数编译对应,个人感觉有点反人类,我们可以使用这个插件变成自己比较直观的对应~
选中需要转换的mybatis log日志,然后点击右键,选择Restore sql from slection
9 Activate-power-mode或者Intellij_power_mode_II
个人感觉 没啥实用。
Idea 个人习惯配置
1 全局(默认) vs 当前
2 全局JDK(默认配置)
具体步骤:顶部工具栏 File ->Other Settins -> Default Project Structure -> SDKs -> JDK
3 全局 Maven(默认配置)
具体步骤:顶部工具栏 File ->Other Settings -> Default Settings -> Build & Tools -> Maven
Maven配置文件
Idea Maven神器
4 配置Git
具体步骤:顶部工具栏 File ->Other Settings -> Default Settings -> Version Control -> Git
5 自动导包和只能移除(默认配置)
具体步骤:顶部工具栏 File ->Other Settings -> Default Settings -> Auto Import
7 Tomcat Server
配置Tomcat方法: File -> Settings -> Deployment -> Application Servers -> Tomcat Server
8 SpringBoot 在IDEA中实现热部署
1 开启Idea自动编译(静态)
具体步骤:顶部工具栏 File ->Other Settings -> Default Settings -> Auto Import
说明:开启自动编译之后,结合Ctrl+Shift+F9 会有热更新效果。
2 开启Idea自动编译(Runtime)(动态)
动态
具体步骤: 敲击 Ctrl + Shift + Alt + / 然后双击Shift搜索进入Registry 勾选自动编译并调整延时参数。
compiler.automake.allow.when.app.running -> 自动编译
compile.document.save.trigger.delay -> 自动更新文件
第二个 它主要是针对静态文件如JS CSS的更新,将延迟时间减少后,直接按F5刷新页面就能看到效果!
3 开启Idea热部署策略(重要)
具体步骤:顶部菜单- >Edit Configurations->SpringBoot插件->目标项目->勾选热更新。
4 在项目添加热部署插件(可选)
如果因为旧项目十分臃肿,导致每次都自动热重启很慢而影响开发效率,笔者建议直接在POM移除spring-boot-devtools
依赖,然后使用Control+Shift+F9进行手工免启动快速更新!!
具体步骤:在POM文件添加热部署插件
1 | <dependency> |
5 关闭浏览器缓存(重要)
打开谷歌浏览器,打开F12的Network选项栏,然后勾选【✅】Disable cache 。、
9 调整字体类型和字体大小
10 打开常用工具栏
具体步骤:顶部导航栏 - View -> 勾选 Toolbar & Tool Buttons