idea常用小技巧:https://mp.weixin.qq.com/s/lBlfsZwaNfsk_i6c0LSaXQ
一 idea-mac快捷键
command+:空格切换输入法
fn+backspace :相反方向删除
option+command+左/右箭头 :回到上一步,keymap->forward
f8: 断点到下一步,都可以通过快捷键设置,自己设置
f9: 跳到下一个断点,都可以通过快捷键设置,自己设置
command+,:打开设置
option+enter键:增加serialVersionUID
ctrl+enter:getter和setter方法
command+shift+上下箭头: 把代码上移或着下移
command+Y:删除
command+G:跳到指定行
shift+enter:跳到下一行
command+option+L:格式化代码
command+左箭头:行首
command+w:关闭当前编辑窗口
control+w:关闭项目
command+shift+U:忽略大小写
command+shift++:展开所有代码
command+shift±:合并所有代码,command±是合并当前代码
command+shift+option+u:构建类图
二 idea-windows快捷键
alt+ctrl+左/右箭头: 回到上一步,keymap->forward
ctrl+alt+s: 打开设置
alt+enter:创建测试类
shift+enter:跳到下一行
alt+1可以调出对应的窗口
alt+shirft+f加到最喜欢列表里
三 idea小技巧
1.源码查看函数调用
查看函数调用关系。
2 maven编译跳过test
3 maven中重命名
4 serialVersionUID
原因:
实现seriazable接口目的是实现序列化。java序列化的机制是通过判断类的serialVersionUID来验证版本一致性。在进行反序列化时,JVM会把传来的字节流的serialVersionUID对于本地相应实体类的serialVersionUID进行比较,如果相同说明是一致的,可以进行反序列化,否则会出现序列化版本一致的异常-InvalidException.
设置方式:
option+enter键:
父类序列化和Transient:
要想父类对象序列化,就需要让父类也实现Serializable接口,否则需要父类有默认的无参构造函数。在父类无参构造函数中对变量进行初始化,否则的话,父类变量都是默认声明的值,如int的默认是0,string默认是null。
Transient关键字的作用是控制变量的序列化,在变量声明前加上该关键字,可以阻止变量被序列化到文件中,在被反序列化后,transient变量的值被设为初始值,int是0,string是null。
5 设置行数字符数
6 设置快捷键
7 提示忽略大小写
找到“Code Completion”->点击Case sensitive completion后面的选择框,选中None,然后一路确定即可
8 让tab多行展示
windows->editortabs->tabs replacement->show tabs in single now
9 idea远程调试
注意:确保服务端代码和本地代码一致
再启动就ok了。
10 lombok插件
@NoArgsConstructor:生成一个无参数的构造方法
@AllArgsContructor:生成衣蛾包含所有变量
@RequiredArgsContructor:生成一个包含常量,和标识了notNull的构造方法。生成的构造方法是private
@Getter
@Setter
@Data
@ToString(exclude={“id”,“name”})
@Synchronized
11 idea图标样例
文件中java类显示红色J,表示无效java类,需要如下操作:
Source Folders表示的都是代码源文件目录,生成的class文件会输出到target->classess文件夹中,但是里面的源文件不会复制到target->classes文件夹中,Test Source Folders表示的都是测试代码源文件目录,生成的class文件同样会输出到target->classess文件夹中,并且里面的源文件不会复制到target->classes文件夹中。
而Recource Folders表示的都是资源文件目录,这些目录里面的文件会在代码编译运行被直接复制到target->classess文件夹中
12 拼写校验
13 maven
新导入项目是找不到maven的
1.pom.xml文件打开
2.鼠标右键找到Add Maven Project点击添加
会自动出现
14 新建一个project项目
选择next
注意这里 project name也要在location中存在
15 idea jdk版本
- idea默认会集成jdk的一个版本,比如jdk11,但是没有源码,需要看源码的话需要下载,在lib目录里的src.zip
- 自己需要指定版本的话,需要下载安装(https://mirrors.huaweicloud.com/),在idea中如下图配置就可以
16 maven cannot access in offline mode
17 idea git
- 需要在本机上下载git安装包进行安装(因为IDEA自己集成的git缺少了git.exe)
- 在idea的setting中设置git安装路径的bin.git.exe
18 自动导入包
Add unambiguous imports on the fly:快速添加明确的导入。
Optimize imports on the fly:快速优化导入,优化的意思即自动帮助删除无用的导入。
19 设置类注释模板和方法注释模板
类注释:https://blog.csdn.net/liqing0013/article/details/84104419
方法注释:https://www.cnblogs.com/pypua/p/11048022.html
类和方法注释:https://blog.csdn.net/Louka/article/details/125839751
20 设置idea一行字符数
21 tab设置为4个空格
如果使用 tab 缩进,必须设置 1 个 tab 为 4 个空格。IDEA 设置 tab 为 4 个空格时,请勿勾选 Use tab character
22 idea清除缓存
四 idea初始化
1. idea导入idea项目
- 下载git并且安装git https://npm.taobao.org/mirrors/git-for-windows/
- 设置ssh
https://blog.csdn.net/dingjianmin/article/details/103170646
设置公钥
- 设置idea的git
- 设置idea的Terminal
2.idea界面介绍
可以设置一些小按钮:
alt+1可以调出对应的窗口
alt+shirft+f加到最喜欢列表里
五 idea插件
free-mybatis-plugin
alibaba代码规范
网站:https://github.com/alibaba/p3c/blob/master/idea-plugin/README_cn.md
findbugs
网站:https://plugins.jetbrains.com/plugin/3847-findbugs-idea/versions
Lombok
六 idea卸载
正常卸载+配置删除(C:\Users\dida.IntelliJIdea2019.1)
七 generateAllSet
自动生成set代码:https://blog.csdn.net/blood_Z/article/details/126097640
八 安装idea本地插件