1、安装IDEA
1.1、官网下载IDEA
官网: 下载 IntelliJ IDEA:JetBrains 功能强大、符合人体工程学的 Java IDE
1.2、安装
1.2.1、下载好以后双击打开安装,点击下一步
1.2.2、选择要安装到的文件夹,一般放到SSD固态硬盘里,下一步
1.2.3、进行选择配置,然后下一步
1.2.4、点击安装
1.2.5、等待安装完成
1.2.6、点击完成,或者勾选,运行IDEA
1.4、优化
设置虚拟机:
如果电脑性能好的话,可以进行软件优化。
1.4.1、打开软件所在文件夹,进入bin目录
1.4.2、记事本打开虚拟机配置
1.4.3、修改配置
1.4.4、保存,然后重启idea,就完成了。
设置配置、缓存等存放地址
-
打开软件所在文件夹->bin->idea.properties。
-
删除这几行前面的#注释,就可以了,后面路径需要修改的话自行修改。
-
如果后面路径没有进行修改的话,打开软件的时候可能会然你选择配置文件存放路径,选择文件夹里显示的那个路径就行了。
-
以后IDEA的所有缓存和配置都会存放在里面,如果把这个文件夹删了,那么所有配置和缓存都会消失,这时候软件就跟刚下载的一样,没有自己任何的配置了。
1.5、选择打开后显示的页面
20版本双击桌面的软件,默认打开的是上一个项目,我们想打开选择项目的页面,就需要自己设置了。
比如这个页面:
2、项目(project)和模块(module)的创建和删除
在Eclipse中,我们有Workspace(工作空间)和product(工程)的概念,在IDEA中只有Project(工程)和Module(模块)的概念,对应关系为:
-
Eclipse中
workspace
相当于IDEA中的Project
-
Eclipse中
Project
相当于IDEA中的Module
2.1、项目创建
2.1.1、双击打开软件,点击Create New Project
创建一个新的项目
2.1.2、添加JDK
2.1.3、点击Next下一步,再点击Next下一步
2.1.4、设置项目名和路径
2.1.5、在src文件夹下,创建测试类
2.1.6、输入完毕以后点击回车
项目目录:
2.1.7、添加测试方法
2.1.8、右键,运行项目
输出结果:
2.2、模块创建
2.2.1、创建模块
2.2.2、点击下一步
2.2.3、设置模块名称和文件路径
2.2.4、点击Finish完成,创建好的模块名称如下:
2.2.5、给模块添加测试类,进行测试
2.3、模块删除
2.3.1、打开模块设置
2.3.2、选择模块,点击-号
2.3.3、 选择Yes,从项目中移除模块Module01,没有文件被删除,因此需要手动删除模块。
2.3.4、打开模块所在文件夹,然后按住shift+del
删除模块,就删除成功了
2.4、项目删除
2.4.1、File->Close Project
2.4.2、删除项目
2.4.3、打开项目所在的文件夹,然后按住shift+del
删除文件夹即可
3、常用设置
点击软件工具栏里最左边的File按钮,打开设置
打开如下窗口:
3.1、外观和行为
3.1.1、设置主题(方法一)
3.1.2、方法二,也可以导入
3.2、编辑器
3.2.1、Ctrl+鼠标滚轮可以控制字体大小
3.2.2、设置鼠标悬浮提示
3.2.3、设置自动导包
3.2.4、显示行号和方法分隔符
举例:
3.2.5、忽略大小写提示
提示出来的时候是判断大小写的,当输入的大小写不对,提示也是不对的,所以需要开启忽略大小写
3.2.6、设置取消单行显示tabs的操作
当打开的文件多的时候,后打开的文件会被隐藏,这时候我们可以设置自动换行
3.2.7、设置默认字体、字体大小、字体行距
3.2.8、设置代码中注释的颜色
3.2.9、修改类头的文档注释信息
参考结果:
3.2.10、设置项目文件编码
勾选的要选上,主要用于转换ascii,不然Properties文件中的注释显示的都不会是中文。
3.3、构建、执行和部署
3.3.1、设置自动编译
3.4、省电模式(不要开)
3.5、设置文件布局
4、设置快捷键
- 如果以前用Eclipse的,现在改用IDEA了,可以把IDEA的快捷键设置为和Eclipse差不多的快捷键。
- 如果以前没用过Eclipse,直接用IDEA的,可以使用IDEA的默认快捷键。
4.1、IDEA改为Eclipse快捷键
4.1.1、方法一(自带):
4.1.2、方法二(导入):
文件地址: IDEA转Eclipse快捷键的jar包
-
下载文件,然后打开IDEA。
-
点击
File->Manage IDE Settings->Import Settings...
,就会打开文件夹 -
找到jar包所在路径,并选择确定
4.2、导入包快捷键详细列举
中文 | 英文 | 快捷键 |
---|---|---|
执行 | run | alt+R |
提示补全 | class Name Completion | alt+/ |
单行注释 | crtl+/ | |
多行注释 | ctrl+shift+/ | |
向下复制一行 | Duplicate Lines | ctrl+alt+down |
删除一行或选中行 | delete line | ctrl+d |
向下移动行 | move statement down | alt+down |
向上移动行 | move statement up | alt+up |
向下开始新的一行 | start new line | shift+enter |
向上开始新的一行 | start New Line before current | ctrl+shift+enter |
万能解错/生成返回值变量 | alt+enter | |
退回到前一个编辑的页面 | back | alt+left |
进入到下一个编辑的页面(针对于上条) | forward | alt+right |
查看继承关系 | type hierarchy | F4 |
格式化代码 | reformat code | ctrl+shift+F或ctrl+alt+L |
提示方法参数类型 | parameter Info | ctrl+alt+/ |
复制代码 | ctrl+C | |
撤销 | ctrl+Z | |
反撤销 | ctrl+Y | |
剪切 | ctrl+X | |
粘贴 | ctrl+V | |
保存(idea会自动保存) | ctrl+S | |
全选 | ctrl+A | |
选中数行,整体往后移动 | tab | |
选中数行,整体往前移动 | shift+tab | |
查看类的结构:类似于eclipse的outline | ctrl+O | |
重构:修改变量名与方法名 | rename | alt+shift+R |
大写转小写/小写转大写 | toggle case | ctrl+shift+Y |
生成构造器/get/set/toString | alt+shift+S | |
查看文档说明 | quick documentation | F2 |
收起所有的方法 | collapse all | alt+shift+C |
打开所有方法 | expand all | alt+shift+X |
打开代码所在的硬盘文件夹 | show in explorer | ctrl+shift+X |
生成try-catch等 | surround with | alt+shift+Z或ctrl+alt+T |
局部变量抽取为成员变量 | introduce field | alt+shift+F |
查找/替换(当前) | ctrl+F | |
查找(全局) | ctrl+H | |
查找文件 | Scratch File | ctrl+alt+shift+insert |
查看类的继承结构图 | show UML Diagram | ctrl+shift+U |
查看方法的多层重写结构 | method hierarchy | ctrl+alt+H |
添加到收藏 | add to favorites | ctrl+alt+F |
抽取方法 | Extract Method | alt+shift+M |
打开最近修改的文件 | Recently Files | ctrl+E |
关闭当前打开的代码栏 | close | ctrl+W |
将光标快速定位到报错位置 | Previous Highlighted Error | shift+F1 |
如何查看源码 | class | ctrl+选中指定的结构 或 ctrl+shift+T |
5、常用模板
5.1、查看模板
File->Settings->Editor->Live Templates
常用模板:
5.2、模板测试
5.2.1、psvm
//psvm
public static void main(String[] args) {}
5.2.2、sout
//sout
System.out.println();
变形:
-
soutp
//psvm public static void main(String[] args) {//soutp 输出当前方法的参数System.out.println("args = " + Arrays.deepToString(args)); }
-
sotm
//psvm public static void main(String[] args) {//soutm 输出当前方法的方法名System.out.println("test02.main"); }
-
soutv
//soutv 打印离的最近的变量int a = 1;System.out.println("a = " + a);//soutv 也可以打印上面所有的变量,当按回车的时候会让你选择变量名或参数名int b = 1;int c = 2;System.out.println("b = " + b);System.out.println("c = " + c);
-
xxx.sout
//xxx.sout System.out.println(b);
5.2.3、fori
// fori 默认不生成循环条件
String[] st = {"java", "html", "css", "js"};
for (int i = 0; i < ; i++) {}
变形:
-
iter
// iter 遍历简单写法 String[] st = {"java", "html", "css", "js"}; for (String s : st) {}
-
itar
// itar 普通的for遍历数组,并赋值给s String[] st = {"java", "html", "css", "js"}; for (int i = 0; i < st.length; i++) {String s = st[i];}
5.2.4、list.for
ArrayList<String> arr = new ArrayList<>();//arr.for
for (String s : arr) {}
变形:
-
list.fori
ArrayList<String> arr = new ArrayList<>();//arr.fori for (int i = 0; i < arr.size(); i++) {}
-
list.forr 倒叙遍历
ArrayList<String> arr = new ArrayList<>();//arr.forr 倒叙遍历 for (int i = arr.size() - 1; i >= 0; i--) {}
5.2.5、ifn
ArrayList<String> arr = new ArrayList<>();//ifn 判断null值
if (arr == null) {}
变形:
-
inn
ArrayList<String> arr = new ArrayList<>();//inn 判断非空 if (arr != null) {}
-
xxx.nn/xxx.null
ArrayList<String> arr = new ArrayList<>();//xxx.nn if (arr != null) {} //xxx.null if (arr == null) {}
5.2.6、prsf
//psf
public static final
变形:
-
psfi
//psfi public static final int
-
psfs
//psfs public static final String
5.3、自定义模板
5.3.1、修改模版
-
任务一:修改main方法的模板(原模板是psvm)
5.3.2、添加模板
-
任务一:添加prs模板,生成代码为:
private String
-
任务二:添加pvt模板,生成代码为:
public void test(){}
6、配置Tomcat
6.1、点击工具栏的Run->Edit Configurations
6.2、点击左上角的+号,然后找到Tomcat Server->Local
6.3、就会看到如下配置页面:
6.4、点击右侧Configure进行配置,起名和选择路径。
6.5、配置完点OK就会看到下面的警告:没有项目部署上去。
补充:配置热更新
如果不配置的话,当jsp或html更新以后,页面刷新不会实时更新。
如果没有这两个选项的话,就配置完毕以后,点击下方的Edit Configurations
再去查找
6.6、点击Deployment。
6.7、点击+号,添加项目
6.8、把javaWeb项目添加进去
6.9、然后启动Tomcat,用浏览器访问就可以了
6.10、访问地址:http://localhost:8080/module01/
7、连接数据库
7.1、点击右侧的Datebase。
7.2、连接数据库,这里以MySQL
为例。
插件MySQL连接的jar包,下载中(挺久的):
7.4、配置完毕以后可以点击测试连接:
解决办法:
7.5、当测试连接成功以后,点击下方的OK。
7.6、然后右侧就出现自己连接的数据库数据了。
8、数据库工具栏的讲解与使用
工具栏解释:
8.1、创建表
- 左上角+号,可以添加很多东西,比如查询、表、概要、用户、连接的数据库等
8.2、添加数据
8.2.1、方法一
8.2.2、方法二
使用下面的SQL控制台进行insert语句的执行。
8.3、用SQL语句进行查询
8.4、修改表结构
使用工具栏里的Source Editor
的工具可以进行表结构的修改。
9、版本控制(Git、Gitee)
9.1、连接Git
9.2、连接Gitee
-
打开IDEA->File->Settings->Plugins->搜索Gitee插件,进行下载。
-
下载好以后进入Version Control里就可以看到Gitee了。
-
添加Gitee连接,因为这里连接过了,所以有一个账户。
-
当输入完成账号密码以后,点击登录就可以了。
9.3、PULL代码
9.4、PUSH代码
-
在拉下来的代码中随便添加点东西。
-
选中项目->鼠标右键->Git->Commit Directory。
-
然后就会打开Git提交的可视化视图
-
这里填好配置以后,点击Commit右侧的下拉箭头,点击提交并推送,这样一步就完成了。
-
如果只点击了提交按钮,没有推送到远程仓库里,就会出现如下情况
-
点击push。
-
GitHub也是一样的步骤,不过自带GitHub插件,不用从插件中下载了。
9.5、查看代码修改日志
10、IDEA与Eclipse项目之间的转换
先在IDEA和Eclipse中创建个简单的java项目,用来测试。
10.1、IDEA转Eclipse
-
打开项目。
-
点击File->Export->Project to Eclipse,把项目转换成Eclipse。
-
然后点击OK,进行转换。
-
等待会后,项目就会多出来一些文件。
-
点击Finish以后就会出现以下项目。
-
打开Test,运行进行测试。
-
这时候就可以看到测试成功了。
10.2、Eclipse转IDEA
-
把在Eclipse中新建的测试项目复制粘贴到桌面上。
-
打开IDEA,点击
Open or import
。 -
然后选择桌面上的项目文件夹,然后点击OK。
-
这时候我们就导入成功,然后进行测试就行了。
-
有的时候会提示没有选择JDK等,根据提示进行配置就好了。
11、DeBug断点测试
11.1、普通断点
2017版本的断点图案释义:
-
编写一个测试类。
public class test02 {public static void main(String[] args) {HashMap<String, Object> map = new HashMap<>();map.put("name","张三");map.put("age",20);map.put("sex","男");map.put("address","河南省郑州市");map.remove("address");}}
-
想在哪行设置断点,就在行号右边单机鼠标左键一下。
-
点击右上角启动右边绿色虫子的图案,使用DeBug模式启动。
-
启用以后下面就会出现以下情况:
-
大家可以一一测试。
11.2、条件断点
调试的时候,可以在循环增加里添加条件判断。
-
写一个for循环
public static void main(String[] args) {for (int i = 0; i <100; i++) {System.out.println(i);}}
-
在输出的那一行加上断点。
-
右键那个断点的红色图标,添加条件,该条件必须为布尔类型的值
-
写完以后点击Done,添加完毕以后,断点图标将会添加一个?
-
然后运行断点调试。
-
执行结果:
11.3、查看表达式的值
12、Maven的创建和使用
12.1、创建Maven
IDEA自带Maven文件,但是我们不用他的,引用我们自己的进行配置。
12.2、使用Maven
13、清除缓存等优化
IDEA会创建很多索引,索引和项目文件大小一样。在创建索引的时候我们最好不要编写代码进行操作,我们有时候电脑断点,蓝屏。再打开项目就会报很多错误,这可能是因为在创建索引的时候没有创建完整,所以报错。这时候我们需要删除缓存和索引
,重新让IDEA创建一下。
13.1、清除缓存和索引
-
点击File->Invalidate Caches / Restart…。
-
一般我们都会点击第一个,但是这样也会清除Local History代码修改记录,如果需要的话,我们要先保存一下Local History这个文件夹。
-
这里就不保存了,直接清除。
-
重启以后在下面可以看到软件正在创建索引。
13.2、取消软件自动更新。
13.3、生成javaDoc
-
Tools->Generate javaDoc。
-
选择生成项目还是文件。
-
在下面选择输出到的地址,这里选择桌面上的一个文件夹。
-
在下面配置编码等。
- Locale:zh_CN
- Other command line arguments:-encoding UTF-8 -charset UTF-8
14、整合Lombok
-
安装插件
-
安装完毕以后,重启IDEA
-
导入Maven依赖
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.4</version></dependency>
-
创建实体类,添加注解,进行测试。
package com.tcc.entity;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;/*** @author 宇辰* 2022/4/16 - 14:49*/ @Data @AllArgsConstructor @NoArgsConstructor public class User {private Integer id;private String name;private Integer age;}
-
查看类的结构
-
通过结果我们可以很清楚的看到,lombok自动给我们生成了getter、setter、toString、有参无参构造方法。