二、界面字體大小設置html
File菜單->Settings->Appearance->Override default fonts by(not recommended):
Name:宋體(建議選擇中文,防止出現中文亂碼。起初的中文字體名稱爲空白,只要把列表框拉到最後隨便選取一個空白而後應用,中文字體名便出現了,再選擇喜歡的字體。)
Size:18
三、代碼字體大小設置java
File菜單->Settings->Editor->Color&Font->Font
首先點擊「save as...」保存爲自定義字體設置,而後修改大小Size:18
git
四、解決代碼中文亂碼程序員
點擊狀態欄右下角GBK-選擇UTF-8,而後根據狀況選擇「reload」或者「convert」。github
五、代碼顯示行號web
File菜單->Settings->Editor-Appearance :show line numbersspring
六、設置IntelliJ IDEA智能提示忽略大小寫數據庫
Editor-Code Completion頁裏有個Case sensitive completion,能夠設置只第一個字母敏感、徹底敏感或者不敏感。app
七、添加自定義代碼補全jsp
File菜單->Settings->Live Templates
先把「By default expand with Tab」改成"Space",這樣更符合VS習慣。
點擊右側的「+」新建一個TemplateGroup,名稱爲user。
而後在user分組下添加自定義的LiveTemplate:
for
System.out.println($END$);
while
while ($END$) {
}
八、更改文件自動註釋,默認生成的文件註釋爲:
打開菜單:File-Settings打開選項設置,找到File and Code Templates--Includes--File Header,修改成:
選擇Templates-class,修改:
使得建立類的時候自動建立TAG。
怎樣調出javadoc註釋視圖
View
| Quick Documentation or the corresponding keyboard shortcut
快捷鍵是Ctrl + Q
IntelliJ中,除了IDE自帶的標準模板,它還具備強大的定義新模板的功能。使用過Eclipse(MyEclipse)的程序員對定義模板並不會陌生,
也必定從中受益。其實,IntelliJ也具備相同的功能。且不去比較哪一個IDE功能更強大。不少新使用IntelliJ的人,和我同樣,會由於IntelliJ複雜
的操做而頭疼,不知道從哪裏入手。加上國內關於IntelliJ的介紹少之又少,相比Eclipse,上手IntelliJ要複雜的多。本篇是在閱讀了如下博文後
記錄下來的Live Template的操做:
http://www.javacodegeeks.com/2011/11/whats-cool-in-intellijidea-part-ii-live.html
首先,Ctrl+J快捷鍵組合用於得到相關模板的列表(對自定義模板和系統模板都起做用)。通常這些縮寫都是模板關鍵詞首字母的組合。
在Settings -> Live Templates -> By default expand with選項,咱們能夠設置擴展提示鍵(default expansionkey),默認的爲
Tab。這裏設置爲Space,由於Space鍵更符合本身的習慣。固然,你能夠不做改動,或者設成其餘系統提供的Key。
首先,咱們先來定義一個咱們經常使用的模板。因爲一些緣由,IntelliJ並無提供try-catch模板。它只提供了把一行語句用try-catch代碼塊
想實現一個空try-catch代碼塊的時候,卻須要手動輸入。
Settings(Ctrl+Alt+S) -> Live Templates -> Add -> Edit Live Template
製做try-catch模板,咱們只須要輸入Abbreviation和try-catch代碼,選中Java code選項。
try-catch模板很是簡單,它只有一些給定的關鍵字。IntelliJ提供的功能遠不止如此,例如,把光標定位到某個位置。
若是咱們想添加一個throwable類型在catch中,咱們能夠添加一個($EXCEPTION$)並經過IntelliJ提供的一個特殊的函數來定義它的值。
例如,我但願輸入一個java.lang.Exception類的子類型,所以我使用了subtype(<type>)函數。
在上圖中,你可能發現我使用了$END$,可是卻沒有編輯窗口,這是由於$END$是預約義的變量,它用把光標最後定位到這個位置。
如今,咱們來試一下輸入try,而後按space鍵,咱們能夠看到擴展出的模板。
首先,光標被定位到catch括號中,來選擇exception類型。Enter,光標將會返回到try代碼塊中。
咱們可能會須要進一步調用exception方法,經過模仿Ctrl+Space來使用一個特殊的方法。這是一個可選的例子,咱們假設如今須要這麼
作。
定義一個$METHOD$,在Edit Live Template窗口中賦值爲complete()函數。
一旦exception類型被選中,將會自動的產生exception實例的列表提示。
這些都是可用於Live Templates爲變量賦值的方法。更值得一提的是,這種方法不只是用於Java語言,其餘語言也一樣能夠,例如
JavaScript, HTML, Groovy Code。
IntelliJ的Live templates提供其餘類型的模板——surrounding templates。這意味着你能夠選擇一行代碼塊(甚至只是光標的一個位置)
而後按Ctrl+Alt+T快捷鍵,就會彈出建議的模板。
定義一個surround templates和normal templates的操做基本同樣。在Template text中輸入$SELECTION$。
模板帶給咱們的好處很明顯:約束+重用。經過模板咱們能夠把變與不變分離,重用不變,變能夠交給子類/經過回調機制完成,並且還具備約束做用,防止亂寫代碼。
那咱們應該利用好這個技術,加速項目的開發速度。接下來咱們看看如何利用模板技術來加速咱們的開發速度。
接下來,我將介紹下如何利用模板技術加速開發速度,但不會接受如何利用模板技術開發可複用的代碼;本文以IntelliJ IDEA爲原型介紹:
一、代碼生成
二、Live Template
三、File and code Templates
四、自動代碼生成
如咱們要求 i + j,能夠先:
int k = add(i, j);
而後按Alt+enter自動生成相關代碼;而不是本身去敲;其會自動生成相應的變量和方法體;如圖
一、按Alt+Enter彈出如建立方法/建立本地變量的提示
二、能夠根據生成的模板方法,修改模板參數;
三、還有典型的如生成構造器、getter/setter等,按Alt+Insert獲得以下圖:
好比在生成構造器時,能夠選擇相關字段,會自動生成相應的賦值操做:
四、Ctrl+O/Alt+Insert生成覆蓋方法;ctrl+I/Alt+Insert生成實現方法的
五、選中代碼後,Ctrl+Alt+T彈出Surround with,生成包圍代碼的的代碼,如if/else:
六、在如JSP標籤頁面中,按Ctrl+Alt+J,生成環繞的標籤:
等等。。具體能夠參考jetbrains.官網的《Generating Code》部分。
若是用過idea,確定用過如輸入 psvm 而後按Tab鍵,會自動生成public static void main方法,使咱們少輸入不少字符。這個功能在idea中叫作Live Template;接下來讓咱們看看有哪些Live Template和如何自定義Live Template。
最多見的功能:
一、psvm----->public static void main(String[] args) {}
二、psfi ------->public static final int
三、ifn 會自動生成以下圖
……
你們能夠經過 File--->Settings---->Live Templates找到全部模板,如:
如 lazy 生成延遲初始化的代碼,inn生成if (** != null)
如fori --->for (int j = 0; j < ; j++) {}
List list; itli ----> for (int i = 0; i < list.size(); i++) { Object o = list.get(i);}
等等,這個能夠去Settings裏查看。
接下來咱們看看如何自定義本身的Live Template:
一、輸入「縮寫前綴」,即在代碼中輸入的前綴;
二、模板文本;
三、Change:選擇在哪使用;
接下來在Java文件中,輸入test會生成 hello world;
此處看到 $END$ 這種變量,接下來解釋下:
一、格式是$變量名$
二、$END$ : 表示展開模板後光標停留的位置,好比咱們的test,生成模板後,光標停留在hello world 前邊;
三、$SELECTION$ : 表示對選中的代碼應用模板;如咱們定義test爲:
如
此處選中「int i = 1;」,而後按Ctrl+Alt+T 彈出「Surround With」 而後輸入test前綴,自動生成:--->hello int i = 1; world
還有如 輸入 if for等前綴 按Ctrl+Shift+Enter會自動生成 帶()和{} 的形式,很是方便。
若是想定義本身的變量,能夠直接點擊在編寫模板時,模板文本右邊的:「Edit variables」 編寫:如獲得返回的變量,方法名,類名等等。
你們能夠參考官網的《Live Templates》。
到此咱們使用的都是代碼塊級別的模板,在工做中咱們常見的還須要:
一、生成如Copyright頭;
二、生成類頭Javadoc,如用戶、時間、版本;
三、建立如spring配置文件,每次可能都是從別的地方複製一份;
四、如咱們作企業項目時,都先寫一個CRUD的DAO、Service、Controller等等,可是幾乎每個模塊都是相似的,可是咱們每次可能都要重複寫一遍;
由於IDEA使用的是velocity模板,因此語法相對來講是比較靈活的,而Eclipse看了下是自創的,因此在建立時沒有IDEA靈活。
File---->Settings--->File and Code Templates 打開模板設置頁面
一、建立Include文件
一、首先選擇Includes標籤,而後點擊建立建立一個;
二、接着Name處輸入名字;
三、Extension部分輸入擴展名;
四、文件正文;
此文件包含了個人copyright
二、添加到類模板中
一、 首先選中Class;
二、在頁面頂部使用 @parse("Coyright.java")把剛纔寫的文件包含進來
接着新建一個Java Class,在頁面的頂部會出現這個copyright;
一、首先File--->Settings---->File and Code Templates進入模板設置頁面
二、建立模板,如圖所示
一、點擊Templates標籤,點擊新增按鈕
二、Name處輸入名字
三、Extension處輸入擴展名
四、輸入模板正文,此處咱們可使用${NAME}和${PACKAGE_NAME}分別獲取輸入的文件名和包名
五、語法是velocity語法,因此很強大,按理說很複雜的需求也能夠實現
三、新增Class
3.一、在包處Alt+Enter彈出新建列表,選擇Java Class
3.二、 接着在彈出的界面中輸入 Service的前綴,並選擇Service類型:
四、接着類就建立好了:
很是方便。
除此以外,咱們還能夠定義如 jsp模板、html模板、配置文件模板等等,消除開發中的重複工做。
可是此種方式的主要缺點就是:一次只能一個文件。好比,咱們生成Service時,其實DAO、Contoller等最好也自動生成。 接下來就須要自動代碼生成了。
估計不少朋友都使用/開發過代碼生成器;其實開發一個簡單的代碼生成器花不了多長時間,核心指導思想是:變與不變分離:
因此根據這個思想能夠很容易寫一個代碼生成器,能夠按照以下步驟完成:
目前見到的主要有這些類型的自動代碼生成。
代碼生成的模板文件可使用純文本(即純粹的字符串替換),更高級點的可使用如velocity這種模板語言,更增強大。
若是有朋友不會寫代碼生成器,能夠先建一個Example的示例代碼,接着作複製、粘帖、修改實體名等等完成,估計30秒鐘也能出一個基本的模塊代碼。可是若是交給代碼生成器,速度更快。
好比筆者剛開發的新項目,還沒時間開發代碼生成器,就寫一個一些示例,這樣若是寫新模塊就直接複製一份改改便可,尤爲樹這塊節省很多時間,點擊showcase前往查看。
代碼生成器也不是萬能的,若是你作過互聯網項目,不像企業應用那樣有許多的增刪改查,因此這個時候,純粹生成CRUD的代碼生成器沒有任何意義。
到此咱們介紹完了模板,使用模板能提高很多開發速度,可是模板不是萬能的,只有發現有些代碼是由:變與不變組成,那咱們就能夠把不變的作成模板,變的部分經過佔位符(即變量)填入。