-
代碼生成Generate
1、生成set/get
alt+insert,或者右鍵——》Generate
這時(shí)會(huì)提示要生成哪個(gè),可以ctrl+a全選
這樣就生成了set/get
2、生成構(gòu)造函數(shù)
光標(biāo)在任意位置按下alt+insert,彈出如下
彈出的框里面,選擇構(gòu)造方法的參數(shù),ctrl+a就是全選
效果:
3、生成toString
把光標(biāo)放在要生成的地方
之后按alt+insert,選擇如圖
在彈出的框里面,鏈接方式默認(rèn)是+號(hào)
這里選擇StringBuffer方式,性能比+號(hào)好
4、生成hashCode和equals
alt+insert,選擇如圖
在彈出的框中,直接點(diǎn)next
選擇要參與equals的字段,默認(rèn)全選
這時(shí)候就會(huì)自動(dòng)生成equals和hashCode
查看全部 -
調(diào)試項(xiàng)目
1、基本斷點(diǎn)調(diào)試功能
啟動(dòng)debug
在編輯區(qū)左邊空白位置點(diǎn)一下,就加了一個(gè)斷點(diǎn)
通過(guò)瀏覽器訪問(wèn)地址后,頁(yè)面出不來(lái),打了斷點(diǎn)的那一行顯示深藍(lán)色,表示程序走到這里暫停了,沒(méi)有繼續(xù)往下執(zhí)行
此時(shí)就可以看到這些變量里面的值
這一排又是啥意思呢?
Step Over(F8):執(zhí)行到當(dāng)前方法的下一句
Step Into(F7):進(jìn)入當(dāng)前行調(diào)用的方法體里,可以進(jìn)到第三方j(luò)ar包(再執(zhí)行下F8就會(huì)跳回來(lái))
Force Step Into(alt+shift+F7):可以進(jìn)到第三方j(luò)ar包方法里面或jdk自帶的方法里面
Step out(shift+F8):執(zhí)行完當(dāng)前的方法
Run to Cursor(alt+F9):運(yùn)行到光標(biāo)所在處
當(dāng)你不想繼續(xù)調(diào)試時(shí),按下這個(gè)三角形就表示跳到下一個(gè)斷點(diǎn),如果沒(méi)有斷點(diǎn)則表示程序會(huì)一直運(yùn)行完
2、斷點(diǎn)管理
在實(shí)際調(diào)試時(shí),可能會(huì)加了很多個(gè)斷點(diǎn),為了方便管理,這里有這么個(gè)菜單:
快捷鍵:ctrl+shift+f8
彈出如下窗口,在這里你就可以管理你的那些斷點(diǎn)了
還有一種情況,如果加了很多斷點(diǎn),但這次調(diào)試時(shí)不需要用到它,但也不想刪掉,
這時(shí)就可以鼠標(biāo)移到那個(gè)斷點(diǎn)上,右擊,去掉Enabled。
也可以在斷點(diǎn)管理里面把勾去掉,效果是一樣的
還有一種情況,我調(diào)試完了,但是之前打的斷點(diǎn)太多,一個(gè)個(gè)取消掉太費(fèi)時(shí)間,這時(shí)候就可以點(diǎn)下這個(gè):
再點(diǎn)一下,斷點(diǎn)即可恢復(fù)
3、條件斷點(diǎn)
假設(shè)有這么個(gè)循環(huán),現(xiàn)在里面某個(gè)值出了問(wèn)題,需要針對(duì)它進(jìn)行斷點(diǎn)調(diào)試
因?yàn)槭轻槍?duì)循環(huán)里面的,所以斷點(diǎn)要在這個(gè)位置,這樣變量i才有值
接著對(duì)著這個(gè)斷點(diǎn)右擊,彈出如下框
在這個(gè)位置,設(shè)下條件,例如:i == 2,當(dāng)循環(huán)遍歷到i為2時(shí),就會(huì)觸發(fā)斷點(diǎn)
(框里面填的是java代碼)
此時(shí)該斷點(diǎn)多了一個(gè)問(wèn)號(hào),表明是條件斷點(diǎn)
另一種情況就是不知道是第幾行出了問(wèn)題,但知道user為test1這個(gè)用戶才出錯(cuò)時(shí),可以這樣:
(一定是要在定義user的下一行加入斷點(diǎn),否則取不到值)
4、異常斷點(diǎn)
有一個(gè)for循環(huán),當(dāng)循環(huán)到某一行時(shí),就出現(xiàn)異常,但你又不知道是哪行,也不知道那一行的屬性值是多少,這時(shí)候就要用異常斷點(diǎn)
先確定是什么異常(如NullPointerException)
來(lái)到斷點(diǎn)管理這里
點(diǎn)擊加號(hào)后,選擇下面這個(gè)
在彈出的框里面,填入NullPointerException
此時(shí)就會(huì)多一個(gè)打了勾的異常斷點(diǎn)
這個(gè)斷點(diǎn)不用你去點(diǎn),在程序運(yùn)行時(shí),只要哪里出現(xiàn)這個(gè)異常,它就會(huì)自動(dòng)打上斷點(diǎn)
5、添加變量監(jiān)控
idea中,斷點(diǎn)的變量值都會(huì)在右邊展示
同時(shí)下面也能看到
還可以自己添加變量,進(jìn)行觀察
加完回車(chē)
這時(shí)候就會(huì)把值打印出來(lái)
查看全部 -
啟動(dòng)項(xiàng)目
1、右鍵運(yùn)行
在任意文件任意位置右鍵——》Run
2、菜單運(yùn)行
選中main方法那個(gè)文件,點(diǎn)擊綠色三角符號(hào)
3、run窗口運(yùn)行
在控制臺(tái)中,也可以啟動(dòng)或者停止運(yùn)行操作
4、啟動(dòng)參數(shù)
如下位置
點(diǎn)開(kāi)后,彈出如下圖,在啟動(dòng)過(guò)的項(xiàng)目里面,有VM options
用法一:?jiǎn)⒂脜?shù)-D可以覆蓋application.properties的配置
運(yùn)行后:
而配置文件是:
也就是說(shuō),這里覆蓋了配置文件里面的端口信息
該操作可以運(yùn)用在測(cè)試數(shù)據(jù)庫(kù)時(shí)
用法二:配合maven,用于多環(huán)境切換
正常情況下:profile=dev
鏈接測(cè)試的數(shù)據(jù)庫(kù):-Dprofile=test
5、自動(dòng)編譯
idea默認(rèn)配置文件配置好后是不會(huì)編譯的,所以需要在下面的位置,打上勾,就可以自動(dòng)編譯了
Settings(快捷鍵:ctrl+alt+s)——》Build,Execution,Deploym...
查看全部 -
鍵盤(pán)鼠標(biāo)的配合
1、縱向選擇:按住alt不放,鼠標(biāo)點(diǎn)擊拖動(dòng)
2、選中一大段代碼
鼠標(biāo)點(diǎn)擊開(kāi)始的位置
找到尾行的位置
按住shift+鼠標(biāo)點(diǎn)擊結(jié)尾位置
3、快速移動(dòng)/復(fù)制代碼
純鍵盤(pán)移動(dòng)多行:
按住shift+上/下選中多行
按住shift+alt+上/下移動(dòng)多行
(不適合移動(dòng)的行數(shù)過(guò)多,移動(dòng)的距離過(guò)遠(yuǎn),或者跨文件移動(dòng))
鍵盤(pán)鼠標(biāo)配合:
鼠標(biāo)點(diǎn)擊開(kāi)始的位置、找到尾行的位置、按住shift+鼠標(biāo)點(diǎn)擊結(jié)尾位置
光標(biāo)定位到目標(biāo)位置的上一行結(jié)尾
ctrl+v粘貼
4、類(lèi)或方法的跳轉(zhuǎn)
進(jìn)入:按住ctrl+鼠標(biāo)左鍵,進(jìn)入方法
跳回:ctrl+alt+方向鍵左
查看全部 -
萬(wàn)能快捷鍵Alt+Enter
alt+Enter:智能輔助提示。給出的提示與當(dāng)前光標(biāo)所在的位置有關(guān)系
1、見(jiàn)到紅色報(bào)錯(cuò),就按
按了后彈出如下提示
2、見(jiàn)到黃色波浪線警告,就按
彈出
按下后
3、沒(méi)報(bào)錯(cuò)沒(méi)警告,也可
查看全部 -
快速查找和替換
1、內(nèi)容查找和替換
當(dāng)前文件查找:ctrl+f
當(dāng)前文件替換:ctrl+r
全局查找:ctrl+shift+f
全局替換:ctrl+shift+r
2、查找文件
按文件名查找文件:ctrl+shift+N
3、查找操作和菜單
查找所有的菜單或操作:ctrl+shift+a
(或者Help——》Find Action...)
4、萬(wàn)能查找
查找文件、菜單、操作等,但不能查找文件內(nèi)容:連按兩次shift
查看全部 -
快速跳轉(zhuǎn)
1、行內(nèi)跳轉(zhuǎn)和選中
跳到行首:Home鍵
跳到行尾:End鍵
跳過(guò)一個(gè)詞:ctrl+左/右
選中一個(gè)詞:ctrl+shift+左/右
2、根據(jù)行號(hào)定位
跳到指定行(根據(jù)行號(hào)跳轉(zhuǎn)):ctrl+G
3、tabs快速切換
左/右切換tabs:alt+左/右
4、查看瀏覽過(guò)的文件
查看瀏覽過(guò)的文件列表:ctrl+e
5、快速打開(kāi)文件所在文件夾(路徑不帶中文才有效)
打開(kāi)文件/類(lèi)所在文件夾:找到你的那個(gè)文件,右鍵——》Show In Explorer
6、導(dǎo)航欄文件切換
這里是導(dǎo)航欄
當(dāng)編輯區(qū)全屏?xí)r,可以不打開(kāi)左邊列表,通過(guò)導(dǎo)航欄就可以找到你接下來(lái)要打開(kāi)的類(lèi)或者文件。
查看全部 -
高效的代碼編輯技能
1、復(fù)制和復(fù)制歷史
復(fù)制:ctrl+c(左邊列表的文件名也可以復(fù)制到編輯區(qū)使用)
復(fù)制一行:光標(biāo)放任意位置,復(fù)制
復(fù)制歷史(保留5條記錄):ctrl+shift+v,選擇你要的記錄雙擊粘貼
粘貼:ctrl+v
2、普通粘貼和簡(jiǎn)單粘貼
普通粘貼:ctrl+v(這是保留格式的)
簡(jiǎn)單粘貼(Paste Simple):ctrl+alt+shift+v(相當(dāng)于文本粘貼)
差別,以下圖代碼為例子:
普通粘貼:
簡(jiǎn)單粘貼:
簡(jiǎn)單粘貼適用于網(wǎng)上復(fù)制代碼的情況,復(fù)制到編輯框后:
alt+鼠標(biāo)左鍵從上往下拖動(dòng),就能選擇到一排的數(shù)字,直接刪除
3、格式化代碼
全選代碼:ctrl+a
局部選擇:選中要格式化的代碼
格式化:ctrl+alt+L
4、剪切和復(fù)制一行或多行
剪切:ctrl+x
(
????1、選中要剪切的內(nèi)容,剪切后會(huì)多一個(gè)空行
????2、光標(biāo)放在剪切行任意位置,剪切后不會(huì)多出一個(gè)空行,可當(dāng)刪除使用
)
快捷復(fù)制:ctrl+d(復(fù)制光標(biāo)所在行,并往下粘貼)
復(fù)制多行:選中你要復(fù)制的多行內(nèi)容,ctrl+d
5、上下移動(dòng)一行或多行
alt+shift+上/下:當(dāng)前行向上/下移動(dòng)一行
移動(dòng)多行:
shift+上/下:光標(biāo)移動(dòng)到要復(fù)制內(nèi)容的頭/尾,向上/向下移動(dòng),選中多行
alt+shift+上/下移動(dòng)下載視頻 ? ? ?? ? ?
查看全部 -
idea編輯區(qū)設(shè)置
1、顯示行號(hào)
Settings(快捷鍵:ctrl+alt+s)——》Editor——》General——》Appearance
2、tabs位置(適用于寬屏)
隨便選一個(gè)tabs,右鍵
效果:
3、tabs排序
a、可以通過(guò)鼠標(biāo)拖動(dòng)排序
b、選中一個(gè)tabs,右鍵,根據(jù)文件名排序
4、tabs數(shù)量
默認(rèn)只顯示10個(gè)
Settings(快捷鍵:ctrl+alt+s)——》Editor——》Editor Tabs
5、自動(dòng)換行
Settings(快捷鍵:ctrl+alt+s)——》Editor——》General
打上勾之后,代碼就能根據(jù)屏幕的大小自動(dòng)換行
下載視頻 ? ? ? ? ?
查看全部 -
idea常用的基本設(shè)置
一、合適的字體大小
Settings(快捷鍵:ctrl+alt+s)——》Appearance & Behavior——》Appearance?
可以調(diào)整字體和大小
編輯區(qū)設(shè)置:
Settings(快捷鍵:ctrl+alt+s)——》Editor——》Color Scheme——》Color Scheme Font
控制臺(tái)設(shè)置:
Settings(快捷鍵:ctrl+alt+s)——》Editor——》Color Scheme——》Console Font
滾輪縮放設(shè)置:
Settings(快捷鍵:ctrl+alt+s)——》Editor——》General
打上勾之后,就可以實(shí)現(xiàn)按住ctrl+鼠標(biāo)滾輪,實(shí)現(xiàn)頁(yè)面字體放大放小的操作,該操作是暫時(shí)的,關(guān)閉打開(kāi)后會(huì)恢復(fù)默認(rèn)
二、編碼改為UTF-8
Settings(快捷鍵:ctrl+alt+s),在搜索框中填入encode
在搜出來(lái)的內(nèi)容里面,把凡是涉及到編碼的方式,都設(shè)為utf-8
三、jdk設(shè)置
File——》Project Structure——》Project
四、autoscroll,位置如下圖(讓左邊的列表和右邊的編輯區(qū)實(shí)現(xiàn)關(guān)聯(lián))
把下面圖中兩個(gè)都勾上
五、auto import(編輯區(qū)中自動(dòng)導(dǎo)入/刪除包功能)
Settings(快捷鍵:ctrl+alt+s),在搜索框中填入auto import,如下圖打上勾
查看全部 -
框架
Spring Boot:能在幾分鐘內(nèi)快速搭建好一個(gè)項(xiàng)目
Mybatis:對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),一般采用這個(gè),這是一個(gè)持久層的框架
Devtools:熱部署工具。有了它之后,每次改代碼IDEA都會(huì)幫我們自動(dòng)重啟
關(guān)于pom.xml的相關(guān)配置
繼承Spring Boot
應(yīng)用想要啟動(dòng),得加入這個(gè)依賴
下面這個(gè)是給熱部署使用的,不需要版本號(hào),跟隨SpringBoot的版本號(hào)就好
繼承Mybatis,加入這個(gè)依賴以及版本號(hào)
使用的是mysql,所以要加入mysql連接包
分層結(jié)構(gòu)
Config:所有的配置
(用于存放SpringBoot相關(guān)的配置類(lèi),包括啟動(dòng)類(lèi))
Controller:請(qǐng)求入口
(所有請(qǐng)求的入口,前后端交互的入口)
Service:邏輯層
(負(fù)責(zé)所有的業(yè)務(wù)邏輯)
Mapper:持久層
(或叫Dao,持久層,負(fù)責(zé)java和數(shù)據(jù)庫(kù)交互。包括interface和xml兩類(lèi)文件)
Domain(Po):表映射實(shí)體
(用一個(gè)java類(lèi)來(lái)映射數(shù)據(jù)庫(kù)表,類(lèi)名就相當(dāng)于表名,類(lèi)的屬性就相當(dāng)于表的字段)
Dto(Data Transfer Object):數(shù)據(jù)傳輸對(duì)象
(用于前后端數(shù)據(jù)交互)
Domain和Dto的區(qū)別:
Domain類(lèi)的屬性完全和表的字段一致;
Dto類(lèi)的屬性一般和表一致,但會(huì)根據(jù)不同的業(yè)務(wù)場(chǎng)景適當(dāng)增加、減少屬性。
用法:
Domain類(lèi)用于java數(shù)據(jù)和數(shù)據(jù)庫(kù)表記錄的映射;用在Service層和Mapper層
Dto用于前后端數(shù)據(jù)傳輸;用在Controller層和Service層
Service層介于Controller和Mapper之間,也是Domain和Dto的轉(zhuǎn)換層
項(xiàng)目結(jié)構(gòu)
命名解析
com.imooc:網(wǎng)站名或者公司名
demo:項(xiàng)目名
domain:包名
查看全部 -
Ctrl+D:復(fù)制光標(biāo)所在行
查看全部 -
多列操作
查看全部 -
選中所有一樣的字符串
查看全部 -
查看方法調(diào)用情況ctrl+alt+H
查看全部
舉報(bào)