文件代碼模板的使用
文件代碼模板的介紹
文件代碼模板可以簡單理解爲:我們在項目中創建某些類型文件時,就已經在對應這些新文件中預設了代碼內容。因爲文字表達都帶有點無力,所以下面用 Gif 動態圖來演示。
- 如上圖 Gif 所示,IntelliJ IDEA 默認新建類自帶的類註釋格式一般不夠友好或是規範,所以我們一般需要自己根據公司編碼規範進行設置。
- 如上圖 Gif 所示,這是根據我自己的需求進行設置的類註釋,這種註釋方式會更友好。
根據演示我們應該已經很好地理解了文件代碼模板是什麼東西了。對此我們可以衍生出很多玩法,比如:我們的項目 Controller、Service、Dao 等常用新對象都是要各自繼承某個類、實現某些接口或預設某些方法,也都可以通過這樣的文件代碼模板來實現。
文件代碼模板的設置
- 如上圖標註 1 所示,文件代碼模板支持的類型基本常見的文件類型都涵蓋了。
- 如上圖標註 2 所示,這是 Java 文件模板新建的代碼模板,其中
${PACKAGE_NAME}、${NAME}
是 IntelliJ IDEA 預設的變量。- 如上圖標註 3 所示,IntelliJ IDEA 的文件代碼模板是可以使用
Velocity Template Language
(VTL) 進行書寫的。如圖 2 上的#if ... #end
和#parse
都是 VTL 的語法。- 如上圖標註 4 所示,介紹當前文件模板的一些信息,以及一些預設變量的作用介紹。
- 如上圖標註 5 所示,這四個按鈕是文件代碼模板的主要操作按鈕,四個操作分別是:
Create Template
創建一個文件代碼模板。Remove Template
刪除一個文件代碼模板,標註 1 所示的這些預設模板是不允許刪除的,只能能刪除預設之外的新增的。Copy Template
複製一個文件代碼模板。Reset To Default
對被修改的預設文件代碼模板,還原到默認狀態。
- 如上圖 Gif 演示,IntelliJ IDEA 默認是沒有提供 XML 文件的創建的,所以我自己創建了一個名爲:
YouMeek XML
的文件模板,該模板後綴爲:xml
,裏面的初始化內容爲:<?xml version="1.0" encoding="UTF-8"?>
。初始化的內容你可以根據自己的需求進行補充。
- 如上圖標註 1 所示,IntelliJ IDEA 還支持其他常見會新建的文件類型,基本上我們根本不用擔心有不支持的文件類型,常用的基本都被涵蓋了。
- 如上圖標註 1 所示,該
File Header
文件就是前面 Java 文件代碼模板中引入語句中#parse("File Header.java")
文件。
- 如上圖標註箭頭所示,
${DESCRIPTION}
是我們自己定義的變量,自定義變量格式有兩種方式:$變量名 或 ${變量名}
。- 自定義的變量在創建對應的文件時候就必須輸入內容,這個在本文最上面的 Gif 演示中已經有體現了。
- 如上圖 Gif 所示,當我們需要用到一個固定值的自定義變量的時候並且該變量多個地方被引用,我們可以通過 VTL 語法的
#set( $變量名 = "變量值內容" );
來設置。
- 因爲
Code
模塊改動的人不多,所以放在最後。我們是無法新建、刪除Code
裏面的代碼模板。- 如上圖標註 1 所示,在我們通過快捷方式生成某個類的測試方法時候會自動調用此
Code
模板,所以我們可以解釋該Code
功能主要用在 IntelliJ IDEA 自動幫我們生成某些代碼的時候引用的模板。
文件代碼模板預設的變量
因爲變量的命名太明瞭不過了,所以這裏不多講解,直接貼出官網的英文解釋:
- ${PACKAGE_NAME} - the name of the target package where the new class or interface will be created.
- ${PROJECT_NAME} - the name of the current project.
- ${FILE_NAME} - the name of the PHP file that will be created.
- ${NAME} - the name of the new file which you specify in the New File dialog box during the file creation.
- ${USER} - the login name of the current user.
- ${DATE} - the current system date.
- ${TIME} - the current system time.
- ${YEAR} - the current year.
- ${MONTH} - the current month.
- ${DAY} - the current day of the month.
- ${HOUR} - the current hour.
- ${MINUTE} - the current minute.
- ${PRODUCT_NAME} - the name of the IDE in which the file will be created.
- ${MONTH_NAME_SHORT} - the first 3 letters of the month name. Example: Jan, Feb, etc.
- ${MONTH_NAME_FULL} - full name of a month. Example: January, February, etc.
PHP 的文件類型預設的變量比上面的還多一點,具體可以查閱官網: