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的一个新的操作。在这里你可以链接到众多主流的数据库。
- setting –> Tools –> Database
- 在database的action中,自己可以点击添加的那个图标,选择自己需要的数据库的连接数据库,配置数据库的账号信息。
- 可以将自己设置的数据库的连接分享到自己的project中(这是默认的方式),同样的可以将其分享到idea中,也就是说打开另一个project的时候,你可以发现这个项目中的数据库的配置连接也是存在的。
- 点击sql的那个图标就可以创建一个数据库sql编写的页面,你可以将这个页面重命名,然后放置到那个Favourite的action中,方便自己可以快速的打开进行编写和执行等操作
- 在下方会出现一个database console的action,这个窗口是用来显示sql执行的结果集
- 在第一步中使用的方式的那个action中,你可以配置sql的显示结果集的方式
- 同样的,在第一步的那个action中,你可以设置自己在console显示出来的结果集中鼠标选中的文本信息进行复制时候的一些格式化的操作,默认的idea中有一个如sql的更新操作,sql的插入操作的,你可以使用csv formats进行数据复制的格式的转换操作
此处的数据库客户端,您可以表的创建,更新,格式化的粘贴,备份,表内容个性化导出等等。
SSH的集成
java项目经常是在Linux中进行部署,每次要切换到XShell这类的终端工具的话,就比较的麻烦了,Intellij中就集成了这样的工具。
集成的操作步骤如下:
- Tool –> Start SSH session…
- 输入IP、用户名、密码等信息
- 如此就可以在下方的Terminal中看到连接linux的信息了
集成FTP
经测试上述的SSH连接以后只是暂时的,如果关闭了的话,那么下次再次打开的时候,需要重新进行代码的配置,如此的话,就不爽了。下面的方法集成FTP的话,发现上述的SSH的集成是可以永久的保存的。如下的操作步骤:
- setting –> Build,Exception… –> Deployment
- 在右边的窗口中输入账号信息,进行SFTP的信息的配置
- 点击第二个Mapping中,可以查看到自己的项目的路径的映射,这里自己可以进行设置,Deployment的操作就是将本地的文件或者是文件夹映射到ftp服务器中的对应的文件中去
- 点击第三个Excluded Paths是排除自己要上传的文件夹的
- 点击Apply
- 在自己的idea中可以发现右边多了一个Remote Host的action,在这个action中,可以看到自己刚才配置的那个信息。对应到项目中去,鼠标右击,进行Upload就可以进行文件的上传操作了
- 如果在上一步操作的时候,将build的jar包放置到了服务器中的话,那么就可以在start SSH session中进行Linux中的项目的启动等操作了。
- 集成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右键菜单集成