IDEA使用总结

IDEA简介

借用百度百科的:

IDEA 全称IntelliJ IDEA,是Java语言开发的集成环境,IntelliJ在业界被公认为最好的Java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。

注册与激活

支持正版,支持开发,如果经济实力稍微好一点的,建议您到官方网站购买您能所使用的研发版本。

常用的操作快捷按键:

  • 快捷键mac

可以点击上方的help--》keymap reference ,就可以查看当前的系统所使用的快捷键的图片信息展示

![](quiver-image-url/870841E505C609E0FCF6A01A1D0802C3.jpg =909x655)

  • 快捷键windows

可以点击上方的help--》keymap reference ,就可以查看当前的系统所使用的快捷键的图片信息展示

  • 自我总结

mac下使用的模式:

![](quiver-image-url/CB92CE89FA544ED8CCF829B30270FC8E.jpg =1071x286)

按键 说明 remark
Cmd + Shift + A 查看所有的Action 此操作可以调用出intellij的大部分的操作窗口,如可以使用此操作调用出keymaps
Cmd + Shift + N 查看文件 如查找txt ,html ,css ,java 等文件
Cmd + N 查看class文件
Ctrl + N 只能插入代码信息 如可以生成setter、getter 等
Cmd + Alt + T Surround with 如try catch
F2 跳转到下一个高亮错误 或 警告位置 shift+F2表示的是反向的操作
F3 在查找模式下,定位到下一个匹配处 shift+F3表示的是反向的操作
Shift + F6 表示的是重命名的操作
Alt + F7 查找光标所在处被调用的地方
F7 (Setp into) F8 下一步, F9 跳出
Shift+Enter 开始新的一行
Cmd + Shift + Enter 智能代码补齐 比如,写了一个String a = "" ,这个时候使用操作就可以自动的将封号补齐
Cmd + Alt + 左 表示的是返回到上一次光标的地方
Cmd + Alt + L 代码格式化
Cmd + J 自定义动态代码的模板引入 例如 fixme , foreach等等
Cmd + K 代码的submit Cmd + Shift + K ,表示的是push代码
Cmd + T pull 代码从remote
Cmd + Alt + N Inline Variable
Cmd + Alt + Shift + T 重构必备万能操作
Cmd + Alt + B 查看方法的实现

基本使用

主题设置和使用

可以使用Cmd+, 进入到总的系统的设置界面,如下
![](quiver-image-url/70462671AB85174B341B319CA8749564.jpg =543x538)

主题样式的设置,可以进入到Editor中,进行设置和操作。

全局设置

使用IDEA代码的时候,可以设置全局的操作,比如说git,svn, maven ,jdk,文件编码等都可以设置全部的操作方式。

设置全局方式的方法:点击File --> Other Settings --> Default Settings...

postfix completion

postfix completion 在IDEA中都是自带的一个插件,此配置信息的查看,可以在Preferences --> Editor --> Postfix Completion
,同样的进入此配置信息的表中,可以使用Cmd+Shift+A,然后再弹出的窗中输入Postfix Completion, 按键Enter就可以进入到此配置信息中。

在此处的配置信息中,你可以看到如下的窗口:
![](quiver-image-url/40C74250479A74A8ED7F6332BBDE21CE.jpg =1262x622)

在此窗口中,你可以看到有如下的Java和JavaScript两种,这里有许多可以操作的快捷方式,如
当你键入

flag.if

的时候,按键Enter或者是tab就可以转为如下的代码:

if (flag) {
            
        }

Emmet

此为前端使用的操作,html,css , js 文件的操作中可以使用如下的操作方式:

input:hidden#demoId.myClass

此时按键tab,则出现如下的

<input type="hidden" name="" id="demoId" class="myClass">

这个是web开发者必备的快捷操作方式,Emmet的使用方式,你可以的到Emmet的官方网站学习它的使用:
如下的一些简单的demo,你可以在自己的html中进行输入如下的代码,然后按住tab就可以看到展示的代码操作:

关键字 demo 说明
Nesting operator
Child: > div>ul>li 父子关系
Sibling:+ div+p+bq 兄弟关系
Climb-up: ^ div+div>p>span+em^bq 复杂的组合关系
Multiplication: * ul>li*5 多个数量的操作的
Grouping: () div>(header>ul>li*2>a)+footer>p 使用括号可以进行分组的操作
(div>dl>(dt+dd)*3)+footer>p 组合关系加上分组以及多个tag操作的demo
Attribute operators
# div#header 会创建一个id为header的div
. div.page 会创建一个class为page的div
[attr] td[title="Hello World!" colspan=3] 上述的操作会出现一个title为helloWorld! colspan为3的input的。如果在属性的value中没有空格的话,那么demo中的引号可以移除的
Item numbering: $ ul>li.item$*5 可以创建出5个class的item动态name,您可以尝试输入多个$符号看看
ul>li.item$@-*5 上述操作的创建的classname的倒叙
ul>li.item$@3*5 可以使用@符号指定一个基调,在此数字的基础上进行创建元素
ul>li.item$@-3*5 上述classname的倒叙
Text: {} a{Click me} 创建出来一个a标签,text为Click me的元素
p>{Click }+a{here}+{ to continue}
CSS
background-image
border-image
#page>(#header>ul#nav>li*4>a)+(#content>h1{Hello World}+p)+#fotter

如下是官网提供的常用的链接网址

live templates

live templates 是IDEA的一个特色,当你输入psvm的时候,这个时候你可以看得到一个自动提示的窗口信息提示,选中输入enter,你可以看到这个魔力,展示如下的:

public static void main(String[] args) {
        
    }

找到此配置信息的,你可以使用Cmd+Shift+A ,然后输入live templates ,当然你也可以使用preference中然后搜索live template找到。

您可以自己在其中定义自己需要的方式。
![](quiver-image-url/D4A12E08D8848701E7F5AA0450EA6649.jpg =639x337)

右侧上方的加号,你可以追加自己分组和自己的live templates,下分的Abbreviation表示的是关键字的设置,Descriptoin,是当你输入关键字的时候,弹窗的信息提示,template text中需要输入当您输入上述的关键字的时候,出现的代码块的信息,其中你可以使用两个$符号,这个是用于动态的占位的,当您选择当前的快捷操作代码块的时候,光标自动定位到动态的代码中去。另外还需要的是在下方的application 中指定关键字执行的范围。

find your todo

自定义你的TODO,在intellij中有默认的TODO的信息提示,当然您也可以自定义自己的TODO,比如使用fixit,让fixit起到和TODO信息提示一样的作用,这个在多人协作开发的时候,用上去有一定的实用性。

可以使用Cmd+Shift+A ,然后输入tod,进入到的页面中,可以看到IDEA自定义的todo的代码,您可以在这里追加自己所需要的fixit,设置其格式,颜色等信息。
![](quiver-image-url/870BD9603CFD60A2E1884151D99E540F.jpg =639x343.5)

database config

数据库的链接是IDEA的一个新的操作。在这里你可以链接到众多主流的数据库。

  1. setting –> Tools –> Database
  2. 在database的action中,自己可以点击添加的那个图标,选择自己需要的数据库的连接数据库,配置数据库的账号信息。
  3. 可以将自己设置的数据库的连接分享到自己的project中(这是默认的方式),同样的可以将其分享到idea中,也就是说打开另一个project的时候,你可以发现这个项目中的数据库的配置连接也是存在的。
  4. 点击sql的那个图标就可以创建一个数据库sql编写的页面,你可以将这个页面重命名,然后放置到那个Favourite的action中,方便自己可以快速的打开进行编写和执行等操作
  5. 在下方会出现一个database console的action,这个窗口是用来显示sql执行的结果集
  6. 在第一步中使用的方式的那个action中,你可以配置sql的显示结果集的方式
  7. 同样的,在第一步的那个action中,你可以设置自己在console显示出来的结果集中鼠标选中的文本信息进行复制时候的一些格式化的操作,默认的idea中有一个如sql的更新操作,sql的插入操作的,你可以使用csv formats进行数据复制的格式的转换操作

此处的数据库客户端,您可以表的创建,更新,格式化的粘贴,备份,表内容个性化导出等等。

SSH的集成

java项目经常是在Linux中进行部署,每次要切换到XShell这类的终端工具的话,就比较的麻烦了,Intellij中就集成了这样的工具。

集成的操作步骤如下:

  1. Tool –> Start SSH session…
  2. 输入IP、用户名、密码等信息
  3. 如此就可以在下方的Terminal中看到连接linux的信息了

集成FTP

经测试上述的SSH连接以后只是暂时的,如果关闭了的话,那么下次再次打开的时候,需要重新进行代码的配置,如此的话,就不爽了。下面的方法集成FTP的话,发现上述的SSH的集成是可以永久的保存的。如下的操作步骤:

  1. setting –> Build,Exception… –> Deployment
  2. 在右边的窗口中输入账号信息,进行SFTP的信息的配置
  3. 点击第二个Mapping中,可以查看到自己的项目的路径的映射,这里自己可以进行设置,Deployment的操作就是将本地的文件或者是文件夹映射到ftp服务器中的对应的文件中去
  4. 点击第三个Excluded Paths是排除自己要上传的文件夹的
  5. 点击Apply
  6. 在自己的idea中可以发现右边多了一个Remote Host的action,在这个action中,可以看到自己刚才配置的那个信息。对应到项目中去,鼠标右击,进行Upload就可以进行文件的上传操作了
  7. 如果在上一步操作的时候,将build的jar包放置到了服务器中的话,那么就可以在start SSH session中进行Linux中的项目的启动等操作了。
  8. 集成SFTP以后,在自己commit代码到git,svn等版本库中的时候,同时可以进行文件的上传操作了

重构

可以借助万能的Cmd + Alt + Shift + T
![](quiver-image-url/BB0404E247038BC7187FB5AA59162FC4.jpg =513x518)

  • 方法提取
  • 参数提取
  • 方法移动
  • 属性提取
  • other,借助万能快捷键

扩展

查看插件信息

查看自己的Intellij中的所以的插件信息,可以借助于setting–>中的plugins查看,其快捷键是ctrl+shift+a ,然后在出来的action中输入plugins,找到相应的list之后,enter就可以进入到插件的配置页面中去。

  • 插件安装

Intellij 中的插件的安装可以借助于查看插件中进行插件的下载,或者可以在官网下载插件使用本地安装模式进行插件的安装

Key promoter

此插件是初期使用ide的时候,可以提示你点击action的次数,如果当前点击的这个action有快捷键的话,那么就会显示的提示这个快捷键的。

安装的过程就可以使用plugins的那个action中,使用browse repositories…进行插件的搜索、下载和安装,安装完成以后,需要重启一下idea。

Key promoter的使用不需要什么按键显示的使用,只要在插件管理中把这个插件置为enabled的话,那么在点击action的时候,他就可以自动的展示信息了。

Ace Jump

此插件是一个可以替代部分鼠标功能的插件。

安装插件,同其他的插件安装一致。

此插件安装以后,也是需要重启idea的,重启以后,其默认的快捷键是ctrl+j的方式,我将其修改为了ctrl+; 如果你在编辑框中的时候,按下aceJump的启动键ctrl+;就可以看到编辑的页面中的光标已经发生了变化,然后你输入自己要找的那个单词,就可以显示的标记出来,图标中出现的那个快捷跳转的字母,这个时候再按下去,就可以直接跳转到这个单词中。

CamelCase

此插件是一个用于实现驼峰命名和下划线命名交替变化的插件

安装插件,同其他的插件安装一致。

此插件使用,选中需要进行变化的变量,然后使用alt+shift+u 多次按下去就可以发现这个字符串在驼峰规则和下划线方式之间进行切换操作。

GsonFormat

此插件是用于将json字符串直接实例化为一个java对象类

安装插件同其他插件安装一致。

此插件的使用,新建一个类,用于存放bean的类,在类中,启用其快捷键alt+s,然后可以在出现的action中将json字符串的数据放入,进行适当的信息勾选和配置,就可以生成类了。

PS:其强大之处在于,只要你的json是合法的,如果其中还有子类的话,那么也可以进行子类的创建的

CodeGlance

此插件是在代码的右侧显示一个地图

安装插件同其他的插件安装一致的。

此插件安装以后,打开的文件,都可以在右侧看到起缩略图

MetricsReloaded

此插件是代码复杂度的查看

安装。。。

此插件安装以后会在下方出现一个action,其中会显示出代码的复杂度,如代码有多少行,多少注释信息等。第一次使用的话,你需要如下的操作。调用出Calculation,然后确定就可以了。

Select the menu item Help | Find Action… and search for Calculate Metrics….

presentation assistant

此插件的作用就是现实当前的操作屏幕者操作的时候使用的按键是哪些,当然其会相应的提供mac、Linux或者是windows中的按键信息

Grep Console

允许你定义一系列将通过控制台输出或文件测试的正则表达式。匹配代码行的每个表达式将会影响整行的样式,或播放声音。例如,错误消息可以被设置在一个红色的背景中显示。

附加功能:ANSI着色

File Tailing:

Main menu | Tools | Open File in Console
Main Menu | Help | Tail (IntelliJ) Log in Console
在主工具条中拖放“Tail File”面板
HTTP和Windows右键菜单集成

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,558评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,002评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,024评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,144评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,255评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,295评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,068评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,478评论 1 305
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,789评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,965评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,649评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,267评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,982评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,223评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,800评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,847评论 2 351

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,908评论 25 707
  • 1. IDEA内存优化 先看看你机器本身的配置而配置. \IntelliJ IDEA 8\bin\idea.exe...
    0100阅读 2,336评论 0 19
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,788评论 6 342
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,644评论 18 139
  • 墨池轩,从事字画行业十余年,合作的大都是富有经验、资历颇深的书画大师,主要提供山水、花鸟、人物等多种主题的画作。墨...
    墨池轩字画阅读 814评论 0 0