idea中live template的詳細使用教程
live template是什麼?
live template是一個預定義的程式碼模板,其中的內容能夠根據上下文資訊自動推斷.
首先放下效果圖

demonstrate.gif
相對於手動打出整塊程式碼,很簡潔有沒有?如果這種毫無技術含量的程式碼都通過live template 來自動生成,有下面兩個好處
1. 有更多的時間關注於業務邏輯,核心程式碼可以更優雅
2. 減少低階錯誤出現的可能,之前手寫拼錯和括號錯位真是血和淚的教訓
筆者很早之前就注意到這個功能,也檢視過官方文件和部落格,都不能盡如人意.本文會以上面為例,從頭到尾完成一個live template,並介紹其大部分功能
一個完整的示範
-
新建一個live template
image.png
-
填寫縮寫和說明
image.png
這樣使用時如果輸入了對應的縮寫,會有如下的提示

image.png
-
設定模板的作用範圍
剛建立模板時idea應該會提示設定作用範圍,我這裡是已經設定過了,所以提示更改, 這裡應該相差不大
image.png
表示式
和語句
時輸入會觸發, 其他情況下不會觸發.例如在方法外輸入unq,ide不會給任何提示
image.png
-
設定模板
live template中模板變數使用
$
包裹的,並且是可複用的,下面的模板就是將會變動的欄位提取為變數
Object result = $CACHE_NAME$.get(String.valueOf($PARAMETER$), x -> getSession().createCriteria($RETURN_TYPE$.class) .add(Restrictions.eq("$END$$PARAMETER$", $PARAMETER$)).setMaxResults(1) .uniqueResult()); return result == null ? null : ($RETURN_TYPE$) result;
- 設定強大的
預定義函式
關於預定義函式參見 ofollow,noindex">官方文件
進入編輯變數頁面,對變數設定需要的函式(這裡很坑,我還以為是在模板裡直接使用預定義函式,結果是預定義函式要附在變數上
),個人認為這個功能很強大
image.png
這裡可以調整變數的填充順序,設定需要的預定義函式,這裡就簡單介紹下用到的兩個函式
1. complete() 游標跳轉到該變數位置時會開啟智慧補全,不確定要用什麼就用它
2. methodReturnType() 使用當前方法的返回型別設定當前變數
image.png
$END$