1、Intellij IDEA简介


Eclipse IBM公司开发

idea cs架构开发 idea开发工具介绍_java

1.1、Jetbrains公司介绍

IDEAJetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。该公司旗下还有许多其他产品,如:

  • WebStorm:用于开发JavaScript、HTML5、CSS3 等前端技术
  • PyCharm:用于开发python
  • PhpStorm:用于开发PHP
  • RubyMine:用于开发Ruby/Rails
  • AppCode:用于开发Objective - C/swift
  • CLion:用于开发C/C+++
  • DataGrip:用于开发数据库和SQL
  • Rider:用于开发.NET
  • GoLand:用于开发 Go

1.2、Intellij IDEA介绍

IDEA 全称 IntelliJ IDEA,是java编程语言的集成开发环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构JavaEE支持、各类版本工具(gitsvn等)、JUnitCVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。

InteliJ IDEA曾在2015年的官网上这样介绍自己:

Excel at enterprise, mobile and web development with Java, Scala and Groovy,with all the latest modern technologies and frameworks available out of the box.

简译: IntelliJ IDEA主要用于支持Java、 Scala、 Groovy 等语言的开发工具,同时具备支持目前主流的技术和框架,擅长于企业应用、移动应用和Web应用的开发。

1.3、IDEA主要功能介绍

语言支持

安装插件后支持

SQL类

基本JVM

PHP

PostgreSQL

Java

Python

MySQL

Groovy

Ruby

Oracle

Scala

SQL Server

Kotlin

其他支持

支持的框架

额外支持的语言代码提示

支持的容器

Spring MVC

H5

Tomcat

GWT

CSS3

TomEE

WebServices

SASS

WebLogin

JSF

LESS

Jetty

Hibernate

Node.js

1.4、IDEA主要优势(相较于Eclipse而言)

  1. 强大的整合能力。比如:Git、 Maven、 Spring 等
  2. 提示功能的快速、便捷
  3. 提示语言功能范围广
  4. 好用的快捷键和代码模板
  5. 精准搜索

1.5、IDEA下载地址

Download

IDEA 分为两个版本:旗舰版(Ultimate)和社区版(Community)

  • 旗舰版收费(限 30 天免费试用),它为 Web 和企业开发提供了额外的工具和功能
  • 社区版免费且开源,它提供了 JVM 和 Android 开发的所有基本功能

idea cs架构开发 idea开发工具介绍_intellij-idea_02

该处提供了不同操作系统下的不同版本的安装文件

两个不同版本的详细对比,可以参照官网:versions compare

1.6、官网详细使用文档

Doc

2、window安装过程


2.1、安装准备

2.1.1、硬件要求(Hardware requirements)

idea cs架构开发 idea开发工具介绍_java_03

建议配置:内存8G或以上,CPU最好 i5 以上,最好安装块固态硬盘(SSD),将IDEA安装在固态硬盘上,这样流畅度会加快很多

2.1.2、软件要求(Software requirements)

操作系统:Microsoft Windows 10/8/7/Vista/2003/XP (32 or 64 bit)

2.2、安装过程

  1. 将下载好的软件包程序双击打开
  2. 点击Next下一步,并选择相应安装路径,点击Next
  3. 选择对应操作系统位数,确认是否与.java、.groovy、.kt 格式文件进行关联,此处可选择不关联
  4. 点击Install稍等片刻即可安装完毕!点击Finish结束

2.3、安装总结

从安装上来看,IntelliJ IDEA 对硬件的要求似乎不是很高。可是在实际开发中其实并不是这样的,因为 IntelliJ IDEA 执行时会有大量的缓存、索引文件,所以如果你正在使用 Eclipse / MyEclipse,想通过 IntelliJ IDEA 来解决计算机的卡、慢等问题,这基本上是不可能的,本质上你应该对自己的硬件设备进行升级

2.4、查看安装目录结构

idea cs架构开发 idea开发工具介绍_java_04

  • bin:容器,执行文件和启动参数等
  • help:快捷键文档和其他帮助文档
  • jre64:64 位java 运行环境
  • lib:idea 依赖的类库
  • license:各个插件许可
  • plugin:插件

3、启动应用后简单配置


3.1、是否导入已有设置

首次启动,会弹出如下的对话框。选择不导入已有的设置

idea cs架构开发 idea开发工具介绍_搜索_05

tips:软件激活请自行百度

3.2、设置主题

idea cs架构开发 idea开发工具介绍_ide_06

这里根据个人喜好,进行选择,也可以选择跳过(skip all and set defaults)。后面在settings 里也可以再设置主题等。这里选择:Next:Default plugins

3.3、设置插件

设置 IDEA 中的各种插件,可以选择自定义设置、删除,或者安装本身不存在的插件(比如:支持 Scala 的插件)。这里不设置,后面也可以通过界面菜单栏的 settings 进行设置

插件官方下载地址

3.4、启动界面

idea cs架构开发 idea开发工具介绍_intellij-idea_07

4、创建 Java 工程,运行HelloWorld


4.1、创建Java工程

idea cs架构开发 idea开发工具介绍_java_08

  • New Project:创建一个新的工程
  • Open:打开一个已有工程。比如:可以打开 Eclipse 项目
  • GET FROM VCS:可以通过服务器上的项目地址 check out Github上面项目或其他 Git 托管服务器上的项目

此处选择 New Project,需要明确一下概念:

IntelliJ IDEA 没有类似 Eclipse 的工作空间的概念(Workspaces),最大单元就是Project。这里可以把 Project 理解为 Eclipse 中的 Workspace

选择指定目录下的 JDK 作为 Project SDK,选择 jdk 的安装路径所在位置:

idea cs架构开发 idea开发工具介绍_ide_09

点击 OK 以后,选择 Next:

idea cs架构开发 idea开发工具介绍_搜索_10

此处无需勾选。选择 Next,进入下一个页面:

idea cs架构开发 idea开发工具介绍_ide_11

给创建的工程起一个名字,点击 Finish即可

4.2、工程界面

工程下的 src 类似于 Eclipse 下的 src 目录,用于存放代码

工程下的.idea 和 project01.iml 文件都是 IDEA 工程特有的。类似于 Eclipse 工程下的.settings、.classpath、.project 等

4.3、创建package和 class

接着在 src 目录下创建一个 package:

idea cs架构开发 idea开发工具介绍_intellij-idea_12

idea cs架构开发 idea开发工具介绍_intellij-idea_13

在包下 new-class:

idea cs架构开发 idea开发工具介绍_java_14

idea cs架构开发 idea开发工具介绍_intellij-idea_15

不管是创建 class,还是 interface,还是 annotation,都是选择 new – java class,然后在下拉框中选择创建的结构的类型。

接着在类 HelloWorld 里声明主方法,输出 helloworld,完成测试

idea cs架构开发 idea开发工具介绍_java_16

tip:在IDEA中,编写完代码,不用点击保存。IDEA会自动帮助你保存代码

5、关于模块


5.1、创建模块(Module)

1、在 Eclipse 中有 Workspace(工作空间)和 Project(工程)的概念,在 IDEA中只有 Project(工程)和 Module(模块)的概念。这里的对应关系为:

IDEA官网说明:

An Eclipse workspace is similar to a project in IntelliJ IDEA

An Eclipse project maps to a module in IntelliJ IDEA

翻译:

Eclipse中 workspace 相当于 IDEA 中的Project

Eclipse中 Project 相当于 IDEA 中的Module

这也是初学者刚接触IDEA时理不清它们之间关系的原因

2、从 Eclipse 转过来的人总是下意识地要在同一个窗口管理 n 个项目,这在IntelliJ IDEA 是无法做到的。IntelliJ IDEA 提供的解决方案是打开多个项目实例,即打开多个项目窗口。即:一个 Project 打开一个 Window 窗口

3、在 IntelliJ IDEA 中 Project 是最顶级的级别次级别是 Module。一个 Project可以有多个 Module。目前主流的大型项目都是分布式部署的,结构都是类似这种多 Module 结构

idea cs架构开发 idea开发工具介绍_idea cs架构开发_17

这类项目一般是这样划分的,比如:core Module、web Module、plugin Module 等等,模块之间彼此可以相互依赖。通过这些 Module 的命名也可以看出,他们之间都是处于同一个项目业务下的模块,彼此之间是有不可分割的业务关系

4、相比较于多 Module 项目,小项目就无需搞得这么复杂。只有一个 Module 的结构 IntelliJ IDEA 也是支持的,并且 IntelliJ IDEA 创建项目的时候,默认就是单Module 的结构的。如何创建 Module?

idea cs架构开发 idea开发工具介绍_java_18

idea cs架构开发 idea开发工具介绍_ide_19

接着选择 Next:

idea cs架构开发 idea开发工具介绍_搜索_20

之后,我们可以在 Module 的 src 里写代码,此时 Project 工程下的 src 就没什么用了。可以删掉

5.2、删除模块(Module)

idea cs架构开发 idea开发工具介绍_idea cs架构开发_21

idea cs架构开发 idea开发工具介绍_intellij-idea_22

idea cs架构开发 idea开发工具介绍_intellij-idea_23

此时的删除,会从硬盘上将此 module 删除掉

5.3、查看项目配置

进入项目结构:

idea cs架构开发 idea开发工具介绍_java_24

查看对应配置:

idea cs架构开发 idea开发工具介绍_搜索_25

6、常用配置


IntelliJ IDEA 有很多人性化的设置供我们选择,也因为这些人性化的设置让那些 IntelliJ IDEA 死忠粉更加死心塌地使用它和分享它

进入设置界面:

idea cs架构开发 idea开发工具介绍_ide_26

目录结构如下:

idea cs架构开发 idea开发工具介绍_idea cs架构开发_27

6.1、Appearance & Behavior

6.1.1、设置主题

idea cs架构开发 idea开发工具介绍_idea cs架构开发_28

这里默认提供了三套主题:IntelliJ,Darcula,Windows。可根据自己的喜好进行选择

6.1.2、设置窗体及菜单的字体及字体大小

idea cs架构开发 idea开发工具介绍_intellij-idea_29

6.1.3、通过插件(plugins)更改主题

插件名称:Material Theme UI

点击按钮以后,在联网环境下搜索如下的插件-安装-重启 IDEA 即可:

idea cs架构开发 idea开发工具介绍_idea cs架构开发_30

如果对安装的主题插件不满意,还可以找到此插件,进行卸载 – 重启 IDEA 即可

6.1.4、默认启动项目配置

启动IDEA时,默认自动打开上次开发的项目?还是自己手动选择?

idea cs架构开发 idea开发工具介绍_ide_31

如果去掉Reopen last project on startup前面的对勾,每次启动IDEA就会出现如下界面:

idea cs架构开发 idea开发工具介绍_搜索_32

6.1.5、取消自动更新

默认会自动检查更新,建议检查IDE更新的√去掉,检查插件更新的√勾选上

idea cs架构开发 idea开发工具介绍_ide_33

6.2、Editor - General

6.2.1、设置鼠标滚轮修改字体大小

idea cs架构开发 idea开发工具介绍_搜索_34

勾选此设置后,按住 Ctrl + 鼠标滚轮 快捷键来控制代码字体大小显示

6.2.2、设置自动导包功能

idea cs架构开发 idea开发工具介绍_搜索_35

  • Add unambiguous imports on the fly:自动导入不明确的结构
  • Optimize imports on the fly:自动帮我们优化导入的包

6.2.3、设置显示行号和方法间的分隔符

idea cs架构开发 idea开发工具介绍_搜索_36

6.2.4、忽略大小写提示

idea cs架构开发 idea开发工具介绍_idea cs架构开发_37

6.2.5、设置取消单行显示tabs的操作

idea cs架构开发 idea开发工具介绍_ide_38

在打开很多文件的时候,IntelliJ IDEA 默认是把所有打开的文件名 Tab 单行显示的。多行效率比单行高,因为单行会隐藏超过界面部分 Tab,不方便寻找文件

6.3、Editor – Font

6.3.1、设置默认的字体、字体大小、字体行间距

idea cs架构开发 idea开发工具介绍_java_39

6.4、Editor – Color Scheme

6.4.1、修改当前主题的字体、字体大小、字体行间距

如果当前主题不希望使用默认字体、字体大小、字体行间距,还可单独设置:

idea cs架构开发 idea开发工具介绍_intellij-idea_40

6.4.2、修改当前主题的控制台输出的字体及字体大小

idea cs架构开发 idea开发工具介绍_intellij-idea_41

6.4.3、修改代码中注释的字体颜色

idea cs架构开发 idea开发工具介绍_java_42

6.5、Editor – Code Style

6.5.1、设置超过指定 import 个数,改为 *

idea cs架构开发 idea开发工具介绍_ide_43

6.6、Editor – File and Code Templates

6.6.1、修改类头的注释信息

idea cs架构开发 idea开发工具介绍_搜索_44

6.7、Editor – File Encodings

6.7.1、设置项目文件编码

idea cs架构开发 idea开发工具介绍_搜索_45

tip:Transparent native-to-ascii conversion 主要用于转换 ascii,一般都要勾选,不然 Properties 文件中的注释显示的都不会是中文

6.8、Build,Execution,Deployment

6.8.1、设置自动编译

idea cs架构开发 idea开发工具介绍_ide_46

构建就是以我们编写的 java 代码、框架配置文件、国际化等其他资源文件、JSP 页面和图片等资源作为“原材料”,去“生产”出一个可以运行的项目的过程

Intellij Idea 默认状态为不自动编译状态,Eclipse 默认为自动编译,很多朋友都是从 Eclipse 转到 Intellij 的,这常常导致我们在需要操作 class 文件时忘记对修改后的 java 类文件进行重新编译,从而对旧文件进行了操作

6.8.2、取消双击shift搜索

平时我们按shift切换中英文输入方式,经常被按到,总是弹出搜索框,太麻烦了。可以取消它,另一种打开它的方式快捷键(Ctrl+N)

方式1:适用于IDEA 2022.1.2及之后版本

idea cs架构开发 idea开发工具介绍_java_47

在2022.1及之前版本中,采用如下方式消双击shift出现搜索框:搜索double即可,勾选Disable double modifier key shortcuts,禁用这个选项

双击shift 或 ctrl + shift + a,打开如下搜索窗口:

idea cs架构开发 idea开发工具介绍_idea cs架构开发_48

选择registry…,找到"ide.suppress.double.click.handler",把复选框打上勾就可以取消双击shift出现搜索
框了

7、关于模板(Templates)


7.1、Editor – Live Templates 和 Editor – General – Postfix Completion

7.1.1、Live Templates(实时代码模板)

它的原理就是配置一些常用代码字母缩写,在输入简写时可以出现你预定义的固定模式的代码,使得开发效率大大提高,同时也可以增加个性化。最显而易见的就是在 Java 中输入 sout 会出现System.out.println();

idea cs架构开发 idea开发工具介绍_intellij-idea_49

7.1.2、Postfix Completion模板(后缀补全)

idea cs架构开发 idea开发工具介绍_ide_50

7.1.3、常用代码模板

  • 非空判断
  • 变量.null:if(变量 == null)
  • 变量.nn:if(变量 != null)
  • 变量.notnull:if(变量 != null)
  • ifn:if(xx == null)
  • inn:if(xx != null)
  • 遍历数组和集合
  • 数组或集合变量.fori:for循环
  • 数组或集合变量.for:增强for循环
  • 数组或集合变量.forr:反向for循环
  • 数组或集合变量.iter:增强for循环遍历数组或集合
  • 输出语句
  • sout:相当于System.out.println
  • soutm:打印当前方法的名称
  • soutp:打印当前方法的形参及形参对应的实参值
  • soutv:打印方法中声明的最近的变量的值
  • 变量.sout:打印当前变量值
  • 变量.soutv:打印当前变量名及变量值
  • 对象操作
  • 创建对象
  • Xxx.new .var :创建Xxx类的对象,并赋给相应的变量
  • Xxx.new .field:会将方法内刚创建的Xxx对象抽取为一个属性
  • 强转
  • 对象.cast:将对象进行强转
  • 对象.castvar:将对象强转后,并赋给一个变量
  • 静态常量声明
  • psf:public static final
  • psfi:public static final int
  • psfs:public static final String
  • prsf:private static final

7.1.4、自定义Live Templates模板

IDEA 提供了很多现成的 Templates。但也可以根据自己的需要创建新的Template

先定义一个模板的组:

idea cs架构开发 idea开发工具介绍_java_51

idea cs架构开发 idea开发工具介绍_搜索_52

选中自定义的模板组,点击”+”来定义模板

idea cs架构开发 idea开发工具介绍_ide_53

idea cs架构开发 idea开发工具介绍_intellij-idea_54

  • Abbreviation:模板的缩略名称
  • Description:模板的描述
  • Template text:模板的代码片段
  • 应用范围,比如点击 Define。选择如下:

idea cs架构开发 idea开发工具介绍_ide_55

按照如上方式定义个测试方法,然后在 java 类文件中测试即可,可根据需求多创建几个Template!

7.1.5、自定义后缀补全模板

idea cs架构开发 idea开发工具介绍_intellij-idea_56


idea cs架构开发 idea开发工具介绍_intellij-idea_57

8、常用插件(plugins)


插件1:Material Theme UI(主题插件)

插件2:GsonFormatPlus(根据 json 生成对象)快捷键:alt + s

插件3:Alibaba Java Coding Guidelines(阿里巴巴Java编码规范检查插件)

插件4:Translation(翻译)

插件5:Rainbow Brackets(彩虹括号)

插件6:CodeGlance Pro(代码缩略图)

插件7:Key Promoter X(快捷键提示)

插件8:Presentation Assistant(显示快捷键操作的按键)

插件9:jclasslib bytecode viewer(可视化字节码查看器)使用方式:idea中打开“view” 菜单,选择“Show Bytecode With jclasslib” 选项

插件10:JavaDoc(文档注释)使用方式:idea中按 alt+insert ,执行操作