1. 如何在idea中使用Mybatis-generator插件快速生成代碼
IntelliJ idea 開發工具的相關資料很少,加大了大家入手的難度,今天就以mybatis的插件安裝做下示例,可能對於已經會用的人不值一提但是對於我們這些天資一般剛開始使用,我想還是會有些幫助。
安裝步驟:
1.下載插件
mybatis 插件
插件下載完畢,存放指定位置,文件名默認應該是:mybatis-plus.jar
2.打開Intellij idea工具,打開菜單 File --> settings 選擇 Plugs,點擊Install plug from disk,選擇剛剛下載的插件jar文件,確認後,會直接顯示mybatis插件和其信息,表示安裝成功。
3.插件安裝後,打開settings,會有Mybatis一項!
2. IDEA怎麼調用FileHeader,快速生成文件頭部的注釋
找到文件和代碼的模板設置.Preferences->Editor->File and Code Templates,然後在Templates這個tab下,選擇你需要修改的文件類型的頭模板。
修改注釋.選中上一步的某一個類型以後,將#parse("File Header.java")這一行刪除。替換為你自己的注釋,例如:#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
/**
* ${NAME}
*
* @author Li Cong
* @date ${DATE}
*/
public @interface ${NAME} {
}
挨個類型都修改,然後點擊右下角的Apply和OK就可以了。
3. IDEA如何整合Git
最近公司使用Git進行協作,有時候,開發團隊可能需要多個人開發同一個模塊,甚至修改同一個文件,在使用Git的過程中有一些細節需要大家注意。
一般步驟
1. 拉取遠端源時先提交本地代碼
注意:如果不提交本地程序,直接合並遠端源會導致本地修改的文件丟失。
額外:如果不想提交本地代碼,可以使用Git stash命令。
個人建議先提交程序。不要使用git stash暫存起來。
2. 本地提交記錄與遠端源合並,並解決沖突。
如果兩個人修改了同一個文件,會產生沖突。沖突的格式
Git用<<<<<<<,=======,>>>>>>>標記出不同分支的內容,沖突的內容。如下
沖突的格式
3.解決沖突的時候,代表又修改了沖突的文件,我們需要重新提交。(commit)。
4.上傳解決的沖突到遠端伺服器。
5、其他人拉取你修改的內容,進行合並。
遠端沖突的文件已經被解決,這時候可接受遠端的文件。無需再次解決沖突。
額外
idea內置了版本控制,有很多好用的功能
2.1 生成ignore模板
需要安裝ignore插件,在.gitignore文件下,右鍵,點擊
添加gitignore內容
然後選擇想要生成的ignore模板, 可以選擇jetbrains,node,java等等。
Idea的git合並
idea為我們提供了很方便的操作,所以重點寫一下。
3.1 右鍵某提交的信息
image.png
3.2 如果產生了沖突,會彈出合並窗口。
沖突窗口
3.3 合並沖突時候的策略與步驟。
1、點擊Merge
2、彈出如下對話框,這個時候我們可以選擇只要本地的文件,或者只保留遠端源的文件。中間部分為解決沖突的區域。
解決沖突的窗口
本地文件與遠端文件都有一個小的標志,如何解決。點擊之後中間的文件會變化,也就是我們如何解決沖突的文件。
image.png
合並完之後,點擊Apply,文件就變成了我們剛才沖突窗口中的中間文件。
最後
Idea為我們提供了很多方便的操作,團隊協作是作為開發人員一定要掌握的技能。重點在第三部分,希望能對大家有幫助。
1人點贊
Develop Tools
4. 用idea編寫java代碼時突然出現的問題求大佬指點
Java8在2014年三月發布了。我們打算將Pons的所有生產伺服器升級到這一新版本。從那時起,我們將大部分代碼庫遷移到lambda表達式、數據流和新的日期API上。我們也會使用Nashorn來把我們的應用中運行時發生改變的部分變成動態腳本。
除了lambda,最實用的特性是新的數據流API。集合操作在任何我見過的代碼庫中都隨處可見。而且對於那些集合操作,數據流是提升代碼可讀性的好方法。
但是一件關於數據流的事情十分令我困擾:數據流只提供了幾個終端操作,例如rece和findFirst屬於直接操作,其它的只能通過collect來訪問。工具類Collctors提供了一些便利的收集器,例如toList、toSet、joining和groupingBy。
例如,下面的代碼對一個字元串集合進行過濾,並創建新的列表:
stringCollection
.stream()
.filter(e -> e.startsWith( "a"))
.collect(Collectors.toList());
在遷移了300k行代碼到數據流之後,我可以說,toList、toSet、和groupingBy是你的項目中最常用的終止操作。所以我不能理解為什麼不把這些方法直接集成到Stream介面上面,這樣你就可以直接編寫:
stringCollection
.stream()
.filter(e -> e.startsWith( "a"))
.toList();
這在開始看起來是個小缺陷,但是如果你需要一遍又一遍地編寫這些代碼,它會非常煩人。
有toArray()方法但是沒有toList(),所以我真心希望一些便利的收集器可以在Java9中這樣添加到Stream介面中。是吧,Brian?ಠ_ಠ
註:Stream.js是瀏覽器上的Java 8 數據流API的JavaScript介面,並解決了上述問題。所有重要的終止操作都可以直接在流上訪問,十分方便。詳情請見API文檔。
無論如何,IntelliJ IDEA聲稱它是最智能的Java IDE。所以讓我們看看如何使用IDEA來解決這一問題。
使用 IntelliJ IDEA 來幫忙
IntelliJ IDEA自帶了一個便利的特性,叫做實時模板(Live Template)。如果你還不知道它是什麼:實時模板是一些常用代碼段的快捷方式。例如,你鍵入sout並按下TAB鍵,IDEA就會插入代碼段System.out.println()。更多信息請見這里。
如何用實時模板來解決上述問題?實際上我們只需要為所有普遍使用的默認數據流收集器創建我們自己的實時模板。例如,我們可以創建.toList縮寫的實時模板,來自動插入適當的收集器.collect(Collectors.toList())。
下面是它在實際工作中的樣子:
讓我們看看如何自己構建它。首先訪問設置(Settings)並在左側的菜單中選擇實時模板。你也可以使用對話框左上角的便利的輸入過濾。
下面我們可以通過右側的+圖標創建一個新的組,叫做Stream。接下來我們向組中添加所有數據流相關的實時模板。我經常使用默認的收集器toList、toSet、groupingBy 和 join,所以我為每個這些方法都創建了新的實時模板。
這一步非常重要。在添加新的實時模板之後,你需要在對話框底部指定合適的上下文。你需要選擇Java → Other,然後定義縮寫、描述和實際的模板代碼。
// Abbreviation: .toList
.collect(Collectors.toList())
// Abbreviation: .toSet
.collect(Collectors.toSet())
// Abbreviation: .join
.collect(Collectors.joining( "$END$"))
// Abbreviation: .groupBy
.collect(Collectors.groupingBy(e -> $END$))
特殊的變數$END$指定在使用模板之後的游標位置,所以你可以直接在這個位置上打字,例如,定義連接分隔符。
提示:你應該開啟"Add unambiguous imports on the fly"(自動添加明確的導入)選項,便於讓IDEA自動添加 java.util.stream.Collectors的導入語句。選項在 Editor → General → Auto Import中。
讓我們在實際工作中看看這兩個模板:
連接
Intellij IDEA中的實時模板非常靈活且強大。你可以用它來極大提升代碼的生產力。你知道實時模板可以拯救生活的其它例子嗎?請讓我知道!
作者:布客飛龍 segmentfault.com/a/1190000006033999