第一章   IDEA的使用

1、为什么要使用idea

最智能的IDE

IDEA相对于eclipse来说最大的优点就是它比eclipse聪明。聪明到什么程度呢?我们先来看几个简单的例子。

A、智能提示重构代码

如果你写的代码过于复杂,或者有更好的方式来替代你写的代码,那么IDEA会给你一个提示,告诉你还可以有更好的方式。如下图:

这个是说你使用了没有必要的装箱操作,对比两句add操作可以看出来,IDEA在帮我们优化代码。

第二个例子:

我们学java的时候学过增强的for循环,其实它的学名叫做foreach语句,上面的代码我使用了普通的for循环,IDEA告诉我,使用foreach语句更好。

B、更友好的代码提示功能

使用eclipse的都应该清楚,如果你想要输入StringBuffer,那么你必须得按着顺序输入,直接输sb是不行的,但是在IDEA里你可以这样输入。

不仅如此,看下一个例子

还可以这样提示。

这些只是一些很简单的例子,但是已经足够强大了。

什么叫智能?

上面的其实都是很基础的功能,IDEA正真智能的 地方在于它会不断的分析你的代码,并且智能的进行反馈。我们 再看一个简单的例子。

这是一个普通的structs程序。在配置文件里定义了一个action并设置了两种不同的返回值。打开我们的action,我们可以看到,你可以直接从代码的左侧找到跳转到对应配置文件的快捷按钮。如果你的某一个方法是覆盖了父类方法,那么你也可以直接查看父类方法。更人性化的是,IDEA可以分析出你的action方法可以跳转到哪些界面?你是不是也有点心动了呢?

C、强大的纠错能力

我们总是会犯一些低级错误,比如一不留神打错一个字母,可能找了好久都找不到错误所在,IDEA的纠错能力也许可以帮到你,再看一个例子。

我们只创建了两个jsp,当你的返回值中出现了你没创建的文件时,IDEA会提示错误,这样就可以避免你因为写错单词而造成的错误。

IDEA的强大之处还有很多,我没办法在一篇文章里全部讲出来,如果你对IDEA产生了一点兴趣,那么请往下看,我们从最基础的环节学起

2、IDEA官方下载地址:

https://www.jetbrains.com/idea/

主要安装步骤:选择License server(必须要在有网络的情况下)验证:输入http://idea.iteblog.com/key.php

2019激活无效参考https://blog.csdn.net/qq_36875339/article/details/89601318

3IDEA的基础配置

A : jdk的配置

在首页点击configure,找到project structure,打开。进入project目录,添加sdk,选择添加jdk,选择你安装jdk的目录即可。

B tomcat的配置

我们在下面的项目中进行tomcat的配置。

IDEA创建一个structs项目

接下来我们正式创建一个structs项目。

1)点击Create New Project。

在下载structsjar包的过程中,可能会失败,属于正常情况,多试几次就好了。。也可以使用自己的jar包。我第一次下载完之后就把下载好的jar包保存起来了,方便下次直接使用(其实IDEA会自动帮你保存的,成功一次后第二次再下载会非常快的)。

2)接下来起个名字,选择路径,点击finish就可以了。

3)将jar包添加到相应路径。在项目名上右键-> Open Module Settings ->Artifacts

在structs的jar包上右键,选择put into /WEB-INF/lib

点击ok即可。

4)对tomcat进行配置

创建tomcat服务

配置相关信息

如果没有配置过tomcat,在这里配置一下就好

这样就可以运行了,点击右上角的绿三角。系统会启动,并且自动打开浏览器访问默认地址(刚刚配置过的,如果默认不变的话,会进入index界面)。接下来就可以愉快的写代码了。

IDEA与eclipse有一个非常大的区别就是没有workspace这个概念,对于IDEA来说,project就是eclipse里的workspace,而IDEA里的Module才是eclipse里的project。刚刚从eclipse转到IDEA的人可能会不习惯。但是没关系,你也可以不创建module,就在project里写也可以。想要深入了解module以及多module编程的可以自己百度,我就不细说了。

4IDEA的个人配置与常用操作

1. 修改代码编辑器

新版的IDEA默认使用vim编辑器(linux下的一个工具),虽然熟练掌握后可以提高工作效率,但是学习成本很大,不习惯的可以选择关闭。

2. 修改主题及字号

这个完全看个人喜好了。

3. 设置代码提示不区分大小写

区分大小写的情况是这样的:比如我们在 Java 代码文件中输入 stringBuffer IntelliJ IDEA 是不会帮我们提示或是代码补充的,但是如果我们输入 StringBuffer 就可以进行代码提示和补充,这样是很不方便的。

4. 设置代码检查等级

这个在界面的右下角,一个老头图标(打开代码文件才能看到)。那个可以拖动的控件就是设置代码检查等级的。

  • Inspections 为最高等级检查,可以检查单词拼写,语法错误,变量使用,方法之间调用等。
  • Syntax 可以检查单词拼写,简单语法错误。
  • None 不设置检查。

5. 设置自动导包

如上图标注 1 和 2 所示,默认 IntelliJ IDEA 是没有开启自动 import 包的功能。

  • 勾选标注 1 选项,IntelliJ IDEA 将在我们书写代码的时候自动帮我们优化导入的包,比如自动去掉一些没有用到的包。
  • 勾选标注 2 选项,IntelliJ IDEA 将在我们书写代码的时候自动帮我们导入需要用到的包。但是对于那些同名的包,还是需要手动Alt + Enter 进行导入的,IntelliJ IDEA 目前还无法智能到替我们做判断。

6. 省电模式

IntelliJ IDEA 有一种叫做 省电模式 的状态,开启这种模式之后 IntelliJ IDEA 会关掉代码检查和代码提示等功能。所以一般我也会认为这是一种 阅读模式,如果你在开发过程中遇到突然代码文件不能进行检查和提示可以来看看这里是否有开启该功能。

7.切分窗口

IDEA 支持对代码进行垂直或是水平分组。一般在对大文件进行修改的时候,有些修改内容在文件上面,有些内容在文件下面,如果来回操作可能效率会很低,用此方法就可以好很多。当然了,前提是自己的浏览器分辨率要足够高。

8. 拼写检查

IDEA 默认是开启单词拼写检查的,有些人可能有强迫症不喜欢看到单词下面有波浪线,就可以去掉该勾选。但是我个人建议这个还是不要关闭,因为拼写检查是一个很好的功能,当大家的命名都是标准话的时候,这可以在不时方便地帮我们找到代码因为拼写错误引起的 Bug。

9. Tab菜单多行显示

在打开很多文件的时候,IntelliJ IDEA 默认是把所有打开的文件名 Tab 单行显示的。但是我个人现在的习惯是使用多行,多行效率比单行高,因为单行会隐藏超过界面部分 Tab,这样找文件不方便。

9. 打开IDEA设置

勾选此选项后,启动 IntelliJ IDEA 的时候,默认会打开上次使用的项目。如果你只有一个项目的话,该功能还是很好用的,但是如果你有多个项目的话,建议还是关闭,这样启动 IntelliJ IDEA 的时候可以选择最近打开的某个项目。

下面的选项是设置当我们已经打开一个项目窗口的时候,再打开一个项目窗口的时候是选择怎样的打开方式。

  • Open project in new window 每次都使用新窗口打开。
  • Open project in the same window 每次都替换当前已打开的项目,这样桌面上就只有一个项目窗口。
  • Confirm window to open project in 每次都弹出提示窗口,让我们选择用新窗口打开或是替换当前项目窗口。

10. 调整代码字体大小

可以勾选此设置后,增加 Ctrl + 鼠标滚轮 快捷键来控制代码字体大小显示。

5IDEA的常用操作(快捷键)

Alt+回车 导入包,自动修正 
Ctrl+N 查找类 
Ctrl+Shift+N 查找文件 
Ctrl+Alt+L 格式化代码 
Ctrl+Alt+O 优化导入的类和包 
Alt+Insert 生成代码(如get,set方法,构造函数等) 
Ctrl+E或者Alt+Shift+C 最近更改的代码 
Ctrl+R 替换文本 
Ctrl+F 查找文本 
Ctrl+Shift+Space 自动补全代码 
Ctrl+空格 代码提示 
Ctrl+Alt+Space 类名或接口名提示 
Ctrl+P 方法参数提示 
Ctrl+Shift+Alt+N 查找类中的方法或变量 
Alt+Shift+C 对比最近修改的代码

Shift+F6 重构-重命名 
Ctrl+X 删除行 
Ctrl+D 复制行 
Ctrl+/ 或 Ctrl+Shift+/ 注释(//
或者/…/ ) 
Ctrl+J 自动代码 
Ctrl+E 最近打开的文件 
Ctrl+H 显示类结构图 
Ctrl+Q 显示注释文档 
Alt+F1 查找代码所在位置 
Alt+1 快速打开或隐藏工程面板 
Ctrl+Alt+ left/right 返回至上次浏览的位置 
Alt+ left/right 切换代码视图 
Alt+ Up/Down 在方法间快速移动定位 
Ctrl+Shift+Up/Down 代码向上/下移动。 
F2 或Shift+F2 高亮错误或警告快速定位

代码标签输入完成后,按Tab,生成代码。 
选中文本,按Ctrl+Shift+F7 ,高亮显示所有该文本,按Esc高亮消失。 
Ctrl+W 选中代码,连续按会有其他效果 
选中文本,按Alt+F3 ,逐个往下查找相同文本,并高亮显示。 
Ctrl+Up/Down 光标跳转到第一行或最后一行下 
Ctrl+B 快速打开光标处的类或方法

第一章 IDEA的使用的更多相关文章

  1. 《Django By Example》第一章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:本人目前在杭州某家互联网公司工作, ...

  2. MyBatis3.2从入门到精通第一章

    第一章一.引言mybatis是一个持久层框架,是apache下的顶级项目.mybatis托管到goolecode下,再后来托管到github下.(百度百科有解释)二.概述mybatis让程序将主要精力 ...

  3. Nova PhoneGap框架 第一章 前言

    Nova PhoneGap Framework诞生于2012年11月,从第一个版本的发布到现在,这个框架经历了多个项目的考验.一直以来我们也持续更新这个框架,使其不断完善.到现在,这个框架已比较稳定了 ...

  4. 第一章 MYSQL的架构和历史

    在读第一章的过程中,整理出来了一些重要的概念. 锁粒度  表锁(服务器实现,忽略存储引擎). 行锁(存储引擎实现,服务器没有实现). 事务的ACID概念 原子性(要么全部成功,要么全部回滚). 一致性 ...

  5. 第一章 Java多线程技能

    1.初步了解"进程"."线程"."多线程" 说到多线程,大多都会联系到"进程"和"线程".那么这两者 ...

  6. 【读书笔记】《编程珠玑》第一章之位向量&位图

    此书的叙述模式是借由一个具体问题来引出的一系列算法,数据结构等等方面的技巧性策略.共分三篇,基础,性能,应用.每篇涵盖数章,章内案例都非常切实棘手,解说也生动有趣. 自个呢也是头一次接触编程技巧类的书 ...

  7. 《JavaScript高级程序设计(第3版)》阅读总结记录第一章之JavaScript简介

    前言: 为什么会想到把<JavaScript 高级程序设计(第 3 版)>总结记录呢,之前写过一篇博客,研究的轮播效果,后来又去看了<JavaScript 高级程序设计(第3版)&g ...

  8. 《Entity Framework 6 Recipes》翻译系列 (1) -----第一章 开始使用实体框架之历史和框架简述

    微软的Entity Framework 受到越来越多人的关注和使用,Entity Framework7.0版本也即将发行.虽然已经开源,可遗憾的是,国内没有关于它的书籍,更不用说好书了,可能是因为EF ...

  9. 《Entity Framework 6 Recipes》翻译系列(2) -----第一章 开始使用实体框架之使用介绍

    Visual Studio 我们在Windows平台上开发应用程序使用的工具主要是Visual Studio.这个集成开发环境已经演化了很多年,从一个简单的C++编辑器和编译器到一个高度集成.支持软件 ...

  10. JAVA 入门第一章(语法基础)

    本人初学java 博客分享记录一下自己的学习历程 java我的初步学习分为六章,有c和c++的基础学起来也简便了很多. 第一章 语法基础 第二章 面向对象 第三章 常用工具类 第四章 文件操纵 第五章 ...

随机推荐

  1. Activity 与 springMvc相整合

    准备环境: springMvc框架及Activity所需要的jar: 创建spring-activity.xml文件,里面内容: <?xml version="1.0" en ...

  2. LintCode主元素

    主元素1: 这道题是编程之美上的一道原题,如果题目未对时间复杂度有严格要求的话可以先排序,再取中位数. 本题中要求算法达到时间复杂度为O(n),空间复杂度为O(1),算法如下: public int ...

  3. 关于字符latin capital letter sharp s "ß"( U+1E9E)显示的问题

    今天测试产品时,遇到德语字符ß在网页上显示为”SS",查了一些相关资料发现这个字符一般用“ss"或"SS"取代. 需要注意,此字符与它的小写形式不同,小写字符l ...

  4. Xshell提示缺失mfc110.dll

    xshell  应用程序无法正常启动0xc000007b    下载 DirectX修复工具_3.3 Xshell 缺少 mfc110.dll     https://www.microsoft.co ...

  5. 基于Cesium三维地图项目记录_通视分析功能的实现

    实现了剖面分析功能之后,下面来看看如何实现通视分析,还是基本按照之前的思路实现: 了解软件LocaScape是怎么实现的: 网址如下:http://www.locaspace.cn/V3.0/help ...

  6. 基于 Hexo + GitHub Pages 搭建个人博客(二)

    在 基于 Hexo + GitHub Pages 搭建个人博客(一) 这篇文章中,我们已经知道如何使用 Hexo + GitHub Pages 搭建一个个人博客,GitHub 为我们提供了免费的域名和 ...

  7. spring boot高性能实现二维码扫码登录(上)——单服务器版

    前言 目前网页的主流登录方式是通过手机扫码二维码登录.我看了网上很多关于扫码登录博客后,发现基本思路大致是:打开网页,生成uuid,然后长连接请求后端并等待登录认证相应结果,而后端每个几百毫秒会循环查 ...

  8. 笔记:Spring Cloud Eureka 常用配置及说明

    配置参数 默认值 说明 服务注册中心配置    Bean类:org.springframework.cloud.netflix.eureka.server.EurekaServerConfigBean ...

  9. Android_scaleType属性

    这里我们重点理解ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType).android:scaleType ...

  10. 【Python】 压缩文件处理 zipfile & tarfile

    [zipfile] 虽然叫zipfile,但是除了zip之外,rar,war,jar这些压缩(或者打包)文件格式也都可以处理. zipfile模块常用的一些操作和方法: is_zipfile(file ...