
IDEA,全称IntelliJIDEA,是Java语言的集成开发环境,IDEA在业界被公认为是最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、创新的GUI设计等方面的功能可以说是超常的。
IDEA是JetBrains公司的产品,公司旗下还有其它产品,比如:WebStorm、DataGrip、GoLand
优势强大的整合能力。比如:Git、Maven、Spring等
提示功能的快速、便捷
提示功能的范围广
好用的快捷键和代码模板privatestaticfinalpsf
精准搜索(IDEA会将您的源代码编入索引)
不需要频繁的Ctrl+S(自动保存)
自带反编译器,方便查看源码
在Eclipse中我们有Workspace(工作空间)和Project(工程)的概念,在IDEA中只有Project(工程)和Module(模块)的概念。Eclipse中workspace相当于IDEA中的Project,Eclipse中Project相当于IDEA中的Module
IDEA和Eclipse的术语对比
EclipseIntelliJIDEAWorkspaceProjectProjectModuleFacetFacetLibraryLibraryJRESDKClasspathvariablePathvariable
模板实时代码模板(LiveTemplates)

它的原理就是配置一些常用代码字母缩写,在输入简写时可以出现你预定义的固定模式的代码,使得开发效率大大提高,同时也可以增加个性化。最简单的例子就是在Java中输入sout会出现();
Editor–General–PostfixCompletion查看已经存在的模板(不可修改)

Editor—LiveTemplates查看或自定义模板(可以添加方式注释、类注释)


**@description:*@param$param$*@return$return$*@date$time$$date$**/
类注释一般通过File—Setting—Editor—LiveTemplates—FileandCodeTemplates设置

程序猿么,每天都在写bug,所以这个功能一定得用的溜
配置通用调试属性和行为:Settings/Preferences|Build,Execution,Deployment|Debugger
1.断点类型断点有四种类型:
行断点(LineBreakpoints):最经常用的方式,可以设置在任何可执行的代码行上
方法断点(MethodBreakpoints):在进入或退出指定的方法或其实现之一时挂起程序,允许您检查方法的进入/退出条件
字段断点(FieldWatchpoints):当指定的字段被读取或写入时,挂起程序。需要注意的是,默认只有写才会停下,想要让读取时也停下,需要右击断点,在Watch的Fieldaccess上打勾才行
异常断点(ExceptionBreakpoints):当抛出Throwable或其子类时挂起程序。可以在**Run—ViewBreakpoints**中的JavaExceptionBreakpoints里添加异常的具体类型。这样的话,程序中一旦发生了这种异常马上就会停下来
2.设置断点

或者快捷键Ctrl+Shift+F8,可以新建异常检测,或者检测所有异常(AnyException)情况,这样只要程序有相应异常,就会挂起

有时候我们在循环处理数据时候,可能只关心某个条件的数据,就可以在断点位置右键,设置断点条件,(下图,在i==6的时候挂起程序)

在调试多线程代码时候,只能串行调试,因为IDEA在Debug时默认阻塞级别是ALL,会阻塞其它线程,只有在当前调试线程走完时才会走其它线程。如果像下图一样是lambda表达式的行,可以选择断点类型。

可以在ViewBreakpoints里选择Thread(右键断点),这样就可以Frames切换线程debug了。


stepover——步过,如果当前行断点是一个方法,则不进入当前方法体内
stepinto——步入,如果当前行断点是一个方法,则进入当前方法体内,一般用于进入自定义方法内,不会进入官方类库的方法
forcestepintoShift+Alt+F7——强制步入,能进入任何方法,查看底层源码的时候可以用这个进入官方类库的方法
stepoutShift+F8——步出,从步入的方法内退出到方法调用处
Dropframe——回退到上一步
RuntocursorAlt+F9——运行到光标处,可以将光标定位到你需要查看的那一行,然后使用这个功能,代码会运行至光标行,而不需要打断点
断点这块有好多功能,可以分析JVM中堆对象、Java8的Stream操作,留个传送门。。。TODO
某大佬总结的:在IntellijIDEA中使用Debug
官方教程:
配置Tomcat远程调试有时候会有一些服务器差异问题导致的问题,不好排查,这个时候就想远程调试下服务器上的代码。
①配置tomcat,在tomcat/bin下的上边添加下边的一段设置
-=NONE-Xrunjdwp:transport=dt_socket,server=y,susp=n,address=9527

②IDEA设置

③在IDEA上启动远程tomcat后,就能debug了
还有一种复制Startup/Connection中的内容到JAVA_OPTS中,没有尝试

书签在翻看源码或者大佬代码的时候,可以方便记录代码的调用链路。
书签有匿名书签(可以有无数个)和标记书签(有数字或者字母助记符的书签)两种
操作书签:Navigate|Bookmarks可以创建匿名书签ToggleBookmark。创建标技书签ToggleBookmarkWithMnemonic,查看标签ShowBookmarks

Lombok——开发神器,可以简化你的实体类
MavenHelper——方便显示maven的依赖树,处理冲突的好帮手
.ignore——忽略不需要提交的文件
FindBugs-IDEA——代码审查
AlibabaJavaCodingGuidelines——阿里的开发设计规范
AlibabaCloudToolkit——帮助开发者更高效地开发、测试、诊断并部署应用。通过插件,可以将本地应用一键部署到任意服务器或云端;并且还内置了Arthas诊断、Dubbo工具、Terminal终端、文件上传、函数计算和MySQL执行器等工具
EasyCode——支持自定义模板的代码生成插件
RestfulToolkit——RESTful服务开发辅助工具集(安利,可以直接在右侧的RestServices查看,所有项目的restful接口,还可以通过Ctrl\全局搜索)
IDEA主题和插件排行榜:;products=idea
激活仅供个人学习使用~~
1.下载补丁文件并将它放置到Idea安装目录的bin目录下,

2.重启IDEA后,打开Help—Register,在LicenseServer填上,http://jetbrains-license-server,失败的话就输入下边的注册码

520E5894E2-eyJsaWNlbnNlSWQiOiI1MjBFNTg5NEUyIiwibGljZW5zZWVOYW1lIjoicGlnNiIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiJVbmxpbWl0ZWQgbGljZW5zZSB0aWxsIGVuZCBvZiB0aGUgY2VudHVyeS4iLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IklJIiwicGFpZFVwVG8iOiIyMDg5LTA3LTA3In0seyJjb2RlIjoiUlMwIiwicGFpZFVwVG8iOiIyMDg5LTA3LTA3In0seyJjb2RlIjoiV1MiLCJwYWlkVXBUbyI6IjIwODktMDctMDcifSx7ImNvZGUiOiJSRCIsInBhaWRVcFRvIjoiMjA4OS0wNy0wNyJ9LHsiY29kZSI6IlJDIiwicGFpZFVwVG8iOiIyMDg5LTA3LTA3In0seyJjb2RlIjoiREMiLCJwYWlkVXBUbyI6IjIwODktMDctMDcifSx7ImNvZGUiOiJEQiIsInBhaWRVcFRvIjoiMjA4OS0wNy0wNyJ9LHsiY29kZSI6IlJNIiwicGFpZFVwVG8iOiIyMDg5LTA3LTA3In0seyJjb2RlIjoiRE0iLCJwYWlkVXBUbyI6IjIwODktMDctMDcifSx7ImNvZGUiOiJBQyIsInBhaWRVcFRvIjoiMjA4OS0wNy0wNyJ9LHsiY29kZSI6IkRQTiIsInBhaWRVcFRvIjoiMjA4OS0wNy0wNyJ9LHsiY29kZSI6IkdPIiwicGFpZFVwVG8iOiIyMDg5LTA3LTA3In0seyJjb2RlIjoiUFMiLCJwYWlkVXBUbyI6IjIwODktMDctMDcifSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjA4OS0wNy0wNyJ9LHsiY29kZSI6IlBDIiwicGFpZFVwVG8iOiIyMDg5LTA3LTA3In0seyJjb2RlIjoiUlNVIiwicGFpZFVwVG8iOiIyMDg5LTA3LTA3In1dLCJoYXNoIjoiODkwNzA3MC8wIiwiZ3JhY2VQZXJpb2REYXlzIjowLCJhdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlLCJpc0F1dG9Qcm9sb25nYXRlZCI6ZmFsc2V9-DZ/oNHBfyho0XrrCJJvAOKg5Q1tLBgOdbCmzCKwkuM+Yryce0RoOi3OOmH6Ba/uTcCh/L37meyD0FJdJIprv59y4+n+k2kIeF/XKrKqg0dEsDUQRw0lUqqMt99ohqa+zmbJ44Yufdwwx/F1CtoRGvEQ2Mn0QjuqRoZJZ3wiT5Am22JiJW8MaNUl3wg9YPj+OPGARKKJUdUJ0NGUDQBcBAv5ds8LhbSbJSbPkbkwH/a1QMz4nEdn6lRDKI1aFIn43QhBSCFqvUq6TPJlbIJ0ZjE+PyZjHFBKCgkry0DHPXU2BbtIZPsksQnN3fx240a9K6sN7peZnLpEoMoq23FEz4g==-MIIElTCCAn2gAwIBAgIBCTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE4MTEwMTEyMjk0NloXDTIwMTEwMjEyMjk0NlowaDELMAkGA1UEBhMCQ1oxDjAMBgNVBAgMBU51c2xlMQ8wDQYDVQQHDAZQcmFndWUxGTAXBgNVBAoMEEpldEJyYWlucyBzLnIuby4xHTAbBgNVBAMMFHByb2QzeS1mcm9tLTIwMTgxMTAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5ndaik1GD0nyTdqkZgURQZGW+RGxCdBITPXIwpjhhaD0SXGa4XSZBEBoiPdY6XV6pOfUJeyfi9dXsY4MmT0D+sKoST3rSw96xaf9FXPvOjn4prMTdj3Ji3CyQrGWeQU2nzYqFrp1QYNLAbaViHRKuJrYHI6GCvqCbJe0LQ8qqUiVMA9wG/PQwScpNmTF9Kp2Iej+Z5OUxF33zzm+vg/nYV31HLF7fJUAplI/1nM+ZG8K+AXWgYKChtknl3sW9PCQa3a3imPL9GVToUNxc0wcuTil8mqveWcSQCHYxsIaUajWLpFzoO2AhK4mfYBSStAqEjoXRTuj17mo8Q6M2SHOcwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBggkA0myxg7KDeeEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4ICAQBonMu8oa3vmNAa4RQP8gPGlX3SQaA3WCRUAj6Zrlk8AesKV1YSkh5D2l+yUk6njysgzfr1bIR5xF8eup5xXc4/G7NtVYRSMvrd6rfQcHOyK5UFJLm+8utmyMIDrZOzLQuTsT8NxFpbCVCfV5wNRu4rChrCuArYVGaKbmp9ymkw1PU6+HoO5i2wU3ikTmRv8IRjrlSStyNzXpnPTwt7bja19ousk56r40SmlmC04GdDHErr0ei2UbjUua5kw71Qn9g02tL9fERI2sSRjQrvPbn9INwRWl5+k05mlKekbtbu2ev2woJFZK4WEXAd/GaAdeZZdumv8T2idDFL7cAirJwcrbfpawPeXr52oKTPnXfi0l5+g9Gnt/wfiXCrPElX6ycTR6iL3GC2VR4jTz6YatT4Ntz59/THOT7NJQhr6AyLkhhJCdkzE2cob/KouVp4ivV7Q3Fc6HX7eepHAAF/DpxwgOrg9smX6coXLgfp0b1RU2u/tUNID04rpNxTMueTtrT8WSskqvaJd3RH8r7cnRj6Y2hltkja82HlpDURDxDTRvv+krbwMr26SB/40BjpMUrDRCeKuiBahC0DCoU/4+ze1l94wVUhdkCfL0GpJrMSCDEK+XEurU18Hb7WT+ThXbkdl6VpFdHsRvqAnhR2g4b+Qzgidmuky5NUZVfEaZqV/g==
3.Help—About,搞定
参考官方指南
idea2019激活