前言
每次換電腦,最最最頭疼的事情莫過于安裝各種軟體和搭建開發環境,這算是不想換電腦的一個原因吧(最主要還是窮),除非是電腦壞了開不了機或者點一下卡一下,真不想換電腦,每次換電腦都得折騰好久,

趁著這次換電腦了,順便整理下IDEA安裝使用及配置,
官網提供的詳細使用檔案,英文好的可以直接上手了
https://www.jetbrains.com/help/idea/getting-started.html
IntelliJ IDEA簡介
IDEA,全稱IntelliJ IDEA,是 Java 語言的集成開發環境, IDEA 在業界被公認為是最好的 java 開發工具之一,一旦用上了就會上癮,尤其在智能代碼助手、代碼自動提示、重構、 J2EE
支持、 Ant、 JUnit、 CVS 整合、代碼審查、創新的 GUI 設計等方面的功能可以說是超常的,
IDEA在官網是這樣解釋自己的
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 應
用的開發
IntelliJ IDEA 相比于Eclipse的優勢
- 強大的整合能力,比如: Git、 Maven、 Spring 等
- 提示功能的快速、 便捷
- 提示功能的范圍廣
- 好用的快捷鍵和代碼模板
- 精準搜索
IntelliJ IDEA 下載安裝
- 下載地址
https://www.jetbrains.com/idea/download/#section=windows
DEA 分為兩個版本: 旗艦版(Ultimate)和社區版(Community),
旗艦版:收費(限 30 天免費試用),功能全面,插件豐富,但是收費,按年收費;
社區版:免費試用,功能相對而言不是很豐富,但是不影響開發使用,

- 軟硬體要求(官方要求)
以現目前最新版為例(現在最新版是idea-2021.3.2)
- 作業系統: 64-bit versions of Microsoft Windows 10, 8
- 記憶體:2 GB RAM minimum, 8 GB RAM recommended
- 硬碟:2.5 GB hard disk space, SSD recommended
- 螢屏:1024x768 minimum screen resolution
- JRE:JRE 1.8 is bundled with the IntelliJ IDEA distribution. You do not need to install Java
on your computer to run IntelliJ IDEA. - JDK A standalone JDK is required for Java development
個人建議配置: 記憶體 8G 或以上, CPU 最好 i5 以上, 最好安裝塊固態硬碟(SSD),將 IDEA
安裝在固態硬碟上,這樣流暢度會加快很多
- 安裝程序
雙擊下載好的exe檔案進行無腦安裝即可



- 激活
淘寶,你懂的,
目錄結構介紹
- 安裝目錄介紹

bin:容器,執行檔案和啟動引數等
idea64.exe.vmoptions 是比較重要的組態檔,這里以我個人電腦為例(win10 64位 16G記憶體)
-Xms512m # 設定初始的記憶體數,增加該值可以提高 Java 程式的啟動速度
-Xmx1500m #設定最大記憶體數,提高該值,可以減少記憶體 Garage 收集的頻率,提高程式性能
-XX:ReservedCodeCacheSize=512m #保留代碼占用的記憶體容量
-XX:+IgnoreUnrecognizedVMOptions
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:CICompilerCount=2
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-ea
-Dsun.io.useCanonCaches=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off
- help:快捷鍵檔案和其他幫助檔案
- jbr: 咱們在介紹intellij idea安裝之前的準備時就給大家說過硬體和軟體上的一個要求,如果你只是想運行java程式,那么你就用不著再去裝jre了,因為intellij idea已經系結好了,在jbr目錄中,大家就能夠看到它已經提供好了java的運行環境,當然,如果你要是想開發java程式的話,那么就得需要獨立安裝jdk了
- lib: idea 依賴的類別庫
- license:各個插件許可
- plugin:插件
- 設定目錄介紹
路徑
C:\Users\用戶.IntelliJIdea2019.3

這是 IDEA 的各種配置的保存目錄, 這個設定目錄有一個特性,就是你洗掉掉整
個目錄之后,重新啟動 IntelliJ IDEA 會再自動幫你生成一個全新的默認配置,
所以很多時候如果你把 IntelliJ IDEA 配置改壞了,刪掉該目錄,一切都會還原到默認值
① config 目錄
此目錄為IDEA最重要的目錄,目錄主要記錄了: IDE 主要配置功能、自定義的代碼模板、自定義的檔案
模板、自定義的快捷鍵、 Project 的 tasks 記錄等等個性化的設定
② system目錄
system 目錄是 IntelliJ IDEA 系統檔案目錄,是 IntelliJ IDEA 與開發專案一個
橋梁目錄, 里面主要有:快取、索引、容器檔案輸出等等
創建Java工程,實作Hell World
- 創建工程

- Create New Project:創建一個新的工程
- Import Project:匯入一個現有的工程
- Open:打開一個已有工程,比如:可以打開 Eclipse 專案,
- Check out from Version Control:可以通過服務器上的專案地址 check out Github
上面專案或其他 Git 托管服務器上的專案
這里選擇 Create New Project
IntelliJ IDEA 沒有類似 Eclipse 的作業空間的概念( Workspaces),最大單元就是
Project, 這里可以把 Project 理解為 Eclipse 中的 Workspace,
-
選擇jdk版本,框架

-
選擇模板

-
設定專案路徑及專案名稱

-
專案界面

- 工程下的 src 類似于 Eclipse 下的 src 目錄, 用于存放代碼
- 工程下的.idea 和 project01.iml 檔案都是 IDEA 工程特有的,類似于 Eclipse 工
程下的.settings、 .classpath、 .project 等
- 創建package和class
在src目錄下創建一個package


在剛建的package下新建class


在HelloWorld類里宣告主方法,控制臺列印Hello World! 到此成功完成

模塊(Module)簡介
在 Eclipse 中我們有 Workspace(作業空間)和 Project(工程)的概念,在 IDEA
中只有 Project(工程)和 Module(模塊)的概念
① Eclipse 中 workspace 相當于 IDEA 中的 Project
②Eclipse 中 Project 相當于 IDEA 中的 Module
eclipse在同一視窗可以管理 n 個專案,這在IntelliJ IDEA 是無法做到的,
IntelliJ IDEA 提供的解決方案是打開多個專案實體,
即打開多個專案視窗, 即: 一個 Project 打開一個 Window 視窗
在 IntelliJ IDEA 中 Project 是最頂級的級別,次級別是 Module, 一個 ProjectIntelliJ IDEA 的安裝、 配置與使用可以有多個 Module,目前主流的大型專案都是分布式部署的, 結構都是類似這種多 Module 結構

下圖為若依專案模塊截圖,根據model命名可以看出,他們之間處于同一專案下,彼此之間有著不可分割的業務關系

相比多個Module專案,小專案就沒這么復雜,IntelliJ IDEA創建專案的時候默認的就是單Module結構的.
- IntelliJ IDEA 中一個專案是以Module為單位的,那么,下面我們就來看看建立和洗掉Module
① 怎么建立Module?



之后,我們可以在 Module 的 src 里寫代碼,此時 Project 工程下的 src 就沒什么用了,可以刪掉,
② 如何洗掉一個Module呢?
- remove Module

- delete Module

直到第二步完成,Module將徹底從磁盤上洗掉
查看專案配置


IDEA 常用配置
file-->Settings 進入設定界面

- Appearance & Behavior
① 設定主題
默認有如下三種主題,根據自己喜好設定即可

② 設定表單及選單的字體及大小

- Editor - General
① 設定滑鼠滾輪修改字體大小

② 設定滑鼠懸浮提示

③ 設定自動導包

- Add unambiguous imports on the fly:自動匯入不明確的結構
- Optimize imports on the fly: 自動幫我們優化匯入的包
④ 設定顯示行號和方法間的分隔符

- 如上圖紅圈所示, 可以勾選 Show line numbers:顯示行數, 建議勾上,好定位代碼
- 如上圖紅圈所示, 可以勾選 Show method separators: 顯示方法分隔線,建議勾上,單一個方法代碼比較多時,好區分一個方法到哪結束
⑤ 忽略大小寫提示

- IntelliJ IDEA 的代碼提示和補充功能默認是區分大小寫的,我們輸入stringb是沒有提示的

- 按照上圖,我們把Match case 前的勾去掉后代碼提示就不區分大小寫了,輸入stringb后就會有提示

⑥ 設定取消單行顯示 tabs 的操作

在打開很多檔案的時候, IntelliJ IDEA 默認是把所有打開的檔案名 Tab 單行顯示的,如果需要多行顯示檔案,超出部分不折疊,則按照上圖設定即可
- Editor – Font
① 設定默認的字體、字體大小、字體行間距

- Editor – Color Scheme
① 修改代碼中注釋的字體顏色

- Doc Comment – Text: 修改檔案注釋的字體顏色
- Block comment: 修改多行注釋的字體顏色
- Line comment: 修改當行注釋的字體顏色
- Editor – File and Code Templates
① 修改類頭的檔案注釋資訊

/**
@author xiezhr
@create ${YEAR}-${MONTH}-${DAY} ${TIME}
*/
- Editor – File Encodings
① 設定專案檔案編碼格式

- Build,Execution,Deployment
① 設定自動編譯

- Intellij Idea 默認狀態為不自動編譯狀態, Eclipse 默認為自動編譯,若你是剛才eclipse轉過來的,這里需要設定下,
- 設定代碼水平或垂直顯示

快捷鍵設定
- 相信不少小伙伴是剛才eclipse轉過來的,習慣了eclipse的快捷鍵,沒問題Intellij Idea中支持將快捷鍵設定成eclipse快捷鍵,

- 匯入快捷鍵設定


- 常用快捷鍵(標?的為常用)
① 編輯類
| 快捷鍵 | 快捷鍵說明 |
|---|---|
| Ctrl + Space | 補全代碼,由于經常與作業系統的輸入法的切換沖突,所以實際很少用,一般直接在 idea 中開啟輸入自動補全機制 |
| Ctrl + Shift + Space | 在列出的可選項中只顯示出你所輸入的關鍵字最相關的資訊,? |
| Ctrl + Shift + Enter | 代碼補全后,自動在代碼末尾添加分號結束符 |
| Ctrl + P | 在某個方法中,呼叫該按鍵后,會展示出這個方法的呼叫引數串列資訊 |
| Ctrl + Q | 展示某個類或者方法的 API 說明檔案 |
| Ctrl + mouse | 跳進到某個類或者方法源代碼中進行查看? |
| Alt + Insert | 自動生成某個類的 Getters, Setters, Constructors, hashCode/equals, toString 等代碼 ? |
| Ctrl + O | 展示該類中所有覆寫或者實作的方法串列 |
| Ctrl + Alt + T | 自動生成具有環繞性質的代碼,比如:if..else,try..catch, for, synchronized 等等,使用前要先選擇好需要環繞的代碼塊? |
| Ctrl + / | 對單行代碼,添加或洗掉注釋,分為兩種情況:如果只是游標停留在某行,那么連續使用該快捷鍵,會不斷注釋掉下一行的代碼;如果選定了某行代碼(選定了某行代碼一部分也算這種情況),那么連續使用該快捷鍵,會在添加或洗掉該行注釋之間來回切換? |
| Ctrl + Shift + / | 對代碼塊,添加或洗掉注釋,它與 Ctrl + / 的區別是,它只會在代碼塊的開頭與結尾添加注釋符號? |
| Ctrl + W | 選中當前游標所在的代碼塊,多次觸發,代碼塊會逐級變大? |
| Ctrl + Shift + W | 是 Ctrl + W 的反向操作,多次觸發,代碼塊會逐級變小,最小變為游標 |
| Alt + Q | 展示包含當前游標所在代碼的父節點資訊,比如在 java 方法中呼叫,就會展示方法簽名資訊 |
| Alt + Enter | 展示當前當前游標所在代碼,可以變化的擴展操作 |
| Ctrl + Alt + L | 格式化代碼? |
| Ctrl + Alt + O | 去除沒有實際用到的包,這在 java 類中特別有用? |
| Ctrl + Alt + I | 按照縮進的設定,自動縮進所選擇的代碼段 |
| Tab / Shift + Tab | 縮進或者不縮進一次所選擇的代碼段? |
| Ctrl + X 或 Shift Delete | 剪切當前代碼? |
| Ctrl + C 或 Ctrl + Insert | 拷貝當前代碼? |
| Ctrl + V 或 Shift + Insert | 粘貼之前剪切或拷貝的代碼? |
| Ctrl + Shift + V | 從之前的剪切或拷貝的代碼歷史記錄中,選擇現在需要粘貼的內容? |
| Ctrl + D | 復制當前選中的代碼? |
| Ctrl + Y | 洗掉當前游標所在的代碼行? |
| Ctrl + Shift + J | 把下一行的代碼接續到當前的代碼行 |
| Ctrl + Enter | 當前代碼行與下一行代碼之間插入一個空行,原來所在的游標不變? |
| Shift + Enter | 當前代碼行與下一行代碼之間插入一個空行,原來游標現在處于新加的空行上? |
| Ctrl + Shift + U | 所選擇的內容進行大小寫轉換? |
| Ctrl + Shift + ]/[ | 從當前游標所在位置開始,一直選擇到當前游標所在代碼段起始或者結束位置 |
| Ctrl + Delete | 洗掉從當前游標所在位置開始,直到這個單詞的結尾的內容 |
| Ctrl + NumPad(+/-) | 展開或收縮代碼段? |
| Ctrl + Shift + NumPad(+) | 展開所有代碼段 |
| Ctrl + Shift + NumPad(-) | 收縮所有代碼段 |
| Ctrl + F4 | 關閉當前標簽頁 |
| Shift + F6 | 修改名字? |
② 查找替換
| 快捷鍵 | 快捷鍵說明 |
|---|---|
| Ctrl + F | 在當前標簽頁中進行查找,還支持正則運算式? |
| F3 | 如果找到了多個查找結果,每呼叫一次就會跳到下一個結果,很方便哦 |
| Shift + F3 | 是 F3 的反向操作,即每呼叫一次就會跳到上一個結果 |
| Ctrl + R | 在當前標簽頁中進行替換操作? |
| Ctrl + Shift + F | 通過路徑查找? |
| Ctrl + Shift + R | 通過路徑替換? |

| 圖示 | 說明 |
|---|---|
| 向上箭頭 | 就是 快捷鍵【Shift + F3】,每呼叫一次就會跳到上一個結果 |
| 向下箭頭 | 就是 快捷鍵【F3】,每呼叫一次就會跳到下一個結果 |
| 加號符號 | 把當前的高亮項加入到選中的串列中 |
| 減號符號 | 把當前的高亮項從選中的串列中移除 |
| 勾選符號 | 把所有的查找結果同時選中,這很適合批量操作 |
| 文本內的向上箭頭 | 打開查詢結果串列面板 |
| 兩個框加一個向下箭頭 | 更多選項 |
| Match Case | 是否大小寫敏感 |
| Regex | 正則運算式 |
| Words | 匹配單詞 |
| x matches | x 表示的是找到的記錄數 |
④ 查看使用情況
| 快捷鍵 | 快捷鍵說明 |
|---|---|
| Alt + F7 | 在當前專案中的使用情況,會打開一個使用情況面板 |
| Ctrl + F7 | 在當前檔案中的使用情況,找的內容會低亮顯示 |
| Ctrl + Shift + F7 | 在當前檔案中的使用情況,找的內容會高亮顯示 |
| Ctrl + Alt + F7 | 打開使用情況串列? |
④ 編譯運行
| 快捷鍵 | 快捷鍵說明 |
|---|---|
| Ctrl + F9 | 編譯專案(如果之前有編譯過,那么只會編譯那些修改的類或者依賴的包? |
| Ctrl + Shift + F9 | 編譯選中的范圍(如果在某個類中,那么只會編譯當前類) |
| Alt + Shift + F10 | 會打開一個已經配置的運行串列,讓你選擇一個后,再運行 |
| Alt + Shift + F9 | 會打開一個已經配置的運行串列,讓你選擇一個后,再以除錯模式運行 |
| Shift + F10 | 立即運行當前配置的運行實體,這個在單元測驗中特別好用? |
| Shift + F9 | 立即以編譯模式運行當前配置的運行實體? |
| Ctrl + Shift + F10 | 按照編輯器系結的檔案型別,運行相關的程式,比如一個 html 頁面,呼叫后,會直接打開一個瀏覽器 |
⑤ 除錯
| 快捷鍵 | 快捷鍵說明 |
|---|---|
| F8 | 跳到當前代碼下一行? |
| F7 | 跳入到呼叫的方法內部代碼? |
| Shift + F7 | 會打開一個面板,讓你選擇具體要跳入的類方法,這個在復雜的嵌套代碼中特別有用 |
| Shift + F8 | 跳出當前的類,到上一級? |
| Alt + F9 | 讓代碼運行到當前游標所在處,非常棒的功能? |
| Alt + F8 | 打開一個運算式面板,然后進行進一步的計算 |
| F9 | 結束當前斷點的本輪除錯(因為有可能代碼會被呼叫多次,所以呼叫后只會結束當前的這一次);如果有下一個斷點會跳到下一個斷點中? |
| Ctrl + F8 | 在當前游標處,添加或者洗掉斷點 |
| Ctrl + Shift + F8 | 打開當前斷點的面板,可以進行條件過濾哦 |
⑥ 導航
| 快捷鍵 | 快捷鍵說明 |
|---|---|
| Ctrl + N | 打開類查詢框? |
| Ctrl + Shift + N | 打開檔案查詢框? |
| Ctrl + Alt + Shift + N | 打開文本查詢框 |
| Alt + 右箭頭/左箭頭 | 跳到下一個/上一個編輯器標簽 |
| F12 | 如果當前在編輯視窗,觸發后,會跳到之前操作過的工具列上 |
| ESC | 從工具列上,再跳回原來的編輯視窗,一般與 F12 配合使用 |
| Shift + ESC | 隱藏最后一個處于活躍狀態的工具視窗 |
| Ctrl + Shift + F4 | 同時關閉處于活動狀態的某些工具列視窗 |
| Ctrl + G | 跳轉至某一行代碼? |
| Ctrl + E | 打開曾經操作過的檔案歷史串列 |
| Ctrl + Alt + 右箭頭/左箭頭 | 在曾經瀏覽過的代碼行中來回跳 |
| Ctrl + Shift + Backspace | 跳轉到最近的編輯位置(如果曾經編輯過代碼) |
| Alt + F1 | 打開一個型別串列,選擇后會導航到當前檔案或者內容的具體與型別相關的面板中 |
| Ctrl + B 或 Ctrl + 滑鼠左鍵 | 如果是類,那么會跳轉到當前游標所在的類定義或者介面;如果是變數,會打開一個變數被參考的串列? |
| Ctrl + Alt + B | 跳轉到實作類,而不是介面? |
| Ctrl + Shift + I | 打開一個面板,里面包含類代碼 |
| Ctrl + Shift + B | 打開變數的型別所對應的類代碼,只對變數有用 |
| Ctrl + U | 打開方法的超類方法或者類的超類,只對有超類的方法或者類有效 |
| Alt + 上/下箭頭 | 在某個類中,跳到上一個/下一個方法的簽名上 |
| Ctrl + ]/[ | 移動游標到類定義的終止右大括號或者起始左大括號 |
| Ctrl + F12 | 打開類的結構串列? |
| Ctrl + H | 打開類的繼承關系串列 |
| Ctrl + Shift + H | 打開某個類方法的繼承關系串列 |
| Ctrl + Alt + H | 打開所有類的方法串列,這些方法都呼叫了當前游標所處的某個類方法? |
| F2/Shift + F2 | 在編譯錯誤的代碼行中來回跳 |
| F4 | 打開當前游標所在處的方法或類原始碼 |
| Alt + Home | 激活包路徑的導航欄 |
| F11 | 把游標所處的代碼行添加為書簽或者從書簽中洗掉? |
| Ctrl + F11 | 把游標所處的代碼行添加為帶快捷鍵的書簽或者從快捷鍵書簽中洗掉, |
| Shift + F11 | 打開書簽串列? |
Ctrl + N (打開類查詢框)
鍵入類名的關鍵字,會自動出現相關的類,很強大

Alt + F1(打開一個型別串列)

模板設定
模板包含Live Templates 和 Postfix Completion
二者的區別: Live Templates 可以自定義,而 Postfix Completion 不可以
- Live Templates(實時代碼模板)

配置一些常用代碼字母縮寫,在輸入簡寫時可以出現你預定義的固定模式的代碼,使得開發效率大大提高.
Java 中輸入 sout 會出現 System.out.println();
- 已有的常用模板

舉例
① psvm
psvm 可生成 main 方法
② sout
sout 可生成 System.out.println()
③ fori
fori:可生成 for 回圈
iter:可生成增強 for 回圈
itar:可生成普通 for 回圈
④ list.for
list.for 可生成集合 list 的 for 回圈
List
輸入: list.for 即可輸出
for(String s:list){
}
⑤ ifn
ifn 可生成 if(xxx = null)
inn:可生成 if(xxx != null)
xxx.nn 或 xxx.null
⑥ prsf
prsf 可生成 private static final
psf 可生成 public static final
psfi 可生成 public static final int
psfs 可生成 public static final String
- 如果對已有的模板不習慣,可以修改

- 如果對已有的模板不習慣,也可以定義自己的模板,步驟如下
① 定義一個模板的組


② 在上一步定義的模板組下定義一個模板


③ 選擇應用范圍

關聯資料庫
- 關聯資料庫



IntelliJ IDEA 的 Database 最大特性就是對于 Java Web 專案來講,常使用的 ORM 框架,如 Hibernate、Mybatis 有很好的支持,比如配置好了 Database 之后,IntelliJ IDEA 會自動識別 domain 物件與資料表的關系,也可以通過 Database 的資料表直接生成 domain 物件等等
- 常用操作

- 圖示 1:同步當前的資料庫連接,這個是最重要的操作,配置好連接以后或通過其他工具操作資料庫以后,需要及時同步,
- 圖示 2:配置當前的連接,
- 圖示 3:斷開當前的連接,
- 圖示 4:顯示相應資料庫物件的資料
- 圖示 5:編輯修改當前資料庫物件
版本控制
不管是個人開發還是團隊開發,都離不開版本控制,IntelliJ IDEA也集成了版本控制工具,

注:IntelliJ IDEA 雖然默認對這些版本控制工具提供插件支持,但是還需要我們自己安裝版本控制客戶端滴
- Git是我們常用的版本控制工具,是目前世界上最先進的分布式版本控制系統(沒有之一),
我們這里就以Git為例,說一說IntelliJ IDEA怎么配置和使用Git
① 下載和安裝Git客戶端
官網下載地址:https://git-scm.com/downloads
全部無腦下一步安裝即可
默認安裝完成后,右鍵出現下圖所示圖示即表示安裝成功

安裝完成后,還需要最后一步設定,在命令列輸入:
# 注意git config命令的--global引數,用了這個引數,表示你這臺機器上所有的Git倉庫都會使用這個配置
$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"
因為Git是分布式版本控制系統,所以,每個機器都必須自報家門:你的名字和Email地址
② 關聯 git.exe

③ 關聯 GitHub 上的賬戶,并測驗連接

④ 在 GitHub 上創建賬戶下的一個新的倉庫作為測驗

⑤ 從當前github 賬號上checkout專案

獲取GitHub上專案路徑,并將專案路徑填入其中




按照以上步驟,在GitHub上的專案即克隆到了本地,是不是很簡單哦
⑥ Git常用操作

clone:拷貝遠程倉庫
commit:本地提交
push:遠程提交
pull:更新到本地
上面只提了最最最常用的命令,如果你想更加深入的了解git,建議參考
廖雪峰的Git教程
注:即使我們沒有使用任何版本控制工具,IntelliJ IDEA也為我們提供了歷史版本查看功能


斷點除錯功能
- debug 模式設定
設定 Debug 連接方式,默認是 Socket,Shared memory 是 Windows 特有的一個屬性,一般在 Windows 系統下建議使用此設定,記憶體占用相對較少

- 常用斷點除錯說明
| 圖示 | 顯示 | 說明 |
|---|---|---|
![]() |
step over | 進入下一步,如果當前行斷點是一個方法,則不進入當前方法體內 |
![]() |
step into | 進入下一步,如果當前行斷點是一個方法,則進入當前方法體內 |
![]() |
force step into | 進入下一步,如果當前行斷點是一個方法,則進入當前方法體內 |
![]() |
step out | 跳出 |
![]() |
resume program | 恢復程式運行,但如果該斷點下面代碼還有斷點則停在下一個斷點上 |
![]() |
stop | 停止 |
![]() |
view breakpoints | 查看所有斷點 |
- 條件斷點
在實際專案中,我們會遇到這樣一種場景,我們已經定位問題(bug)就出在這個回圈里,但是確定不了回圈到第幾次的時候報錯,
當回圈次數比較少,是3次或5次的時候,我們可以一次一次的除錯,但當回圈次數是100次,甚至1000次呢?這個時候我們就需要用到條件斷點了,
在回圈里增加條件判斷,能大大提高我們的效率
我們在需要設定斷點的陳述句前單擊,當出現紅色斷點時,右鍵出現如下圖所示,即可加入條件,

debug程式,程式在i=10的時候停止


配置maven
- Java專案構成
在介紹maven 前,我們先了解下一個Java專案需要哪些東西,
- 如果我們需要log4j,就需要吧log4j相關的jar包放到classpath中,如果我們需要fastjson,就需要把fastjson相關的jar包放到classpath中,這就是依賴包的管理
- 我們要確定專案的目錄結構,例如,src目錄存放Java原始碼,resources目錄存放組態檔,bin目錄存放編譯生成的.class檔案
- 我們還需要配置環境,例如JDK的版本,編譯打包的流程
- 需要對代碼進行編譯,才能夠讓專案在一個獨立的服務器上編譯、測驗、部署
- maven 簡介
這些作業難度不大,但是非常瑣碎且耗時,如果每一個專案都自己搞一套配置,肯定是費時費力,我們需要的是一個標準化的Java專案管理和構建工具
Maven就是是專門為Java專案打造的管理和構建工具,Maven有以下功能
- 提供了一套標準化的專案結構
- 提供了一套標準化的構建流程(編譯,測驗,打包,發布……)
- 提供了一套依賴管理機制
- Maven 專案結構

- Maven構建流程

- IntelliJ IDEA 配置Maven

- 新建Maven專案
① 新建專案

②選擇Maven專案

③設定專案引數

④配置本地Maven設定

⑤初始化專案

⑥專案構建完成

- 添加第三方jar包
mysql 是我們日常開發中常用的資料庫,這里我們以匯入MySQL驅動包為例
①當我們執行App.java中代碼時,由于沒加mysql驅動包,所以會報如下錯誤

②修改pom.xml檔案,添加如下內容
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.20</version>
</dependency>

注:dependency標簽中的內容我們不用死記,我們只需要到https://mvnrepository.com/查詢,然后復制即可


③ 等待驅動下載完成

④ 再次運行,成功

創建web專案并配置tomcat
- 新建maven web專案
① 創建專案

②選擇Maven webapp格式

③填寫專案引數

④ 配置本地Maven相關引數

⑤配置java源代碼目錄
maven web專案默認是沒有java源代碼目錄的,所以需要手動創建,并設定其為源代碼目錄
右鍵main目錄-> New->Directory->輸入java->右鍵java->Mark Directory as-> Sources Root
這樣就創建了存放java源檔案的目錄了
⑥ 新建servlet


package com.xiezhr;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Date;
@WebServlet(name = "HelloServlet")
public class HelloServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().println("<h1>Hello Servlet! Hello xiezhr!</h1>");
response.getWriter().println(new Date().toLocaleString());
}
}
⑦修改web.xml
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.xiezhr.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
⑧pom.xml添加servlet包依賴
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
- 配置tomcat
① 打開tomcat配置,并選擇tomcat 路徑

② 設定部署


③ 運行專案


④ 測驗成功

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/553035.html
標籤:Java
下一篇:返回列表









