java單元測試流程&學習md的流程圖

IDEA自動補齊彙總:
第一種:IDEA已定義
psvm: public static void main(String[] args){}
sout: System.out.println()
fori: for(i...)java

第二種: 自定義:
打開IDEA的File-project settings--liveTemplates
點擊右邊的加號,先建立一個模板的分組template group,命名爲JAVA
再添加live template,命名爲main(自定義),再添加模板文本(也就是自動補全的代碼),最後就是change(就是應用到哪裏),好比是Java,JS仍是其餘地方git

java技能圖譜,2020-01-09開始系統學習javaredis

graph LR B1(java技能圖譜)-->B2(計算機基礎) B1(java技能圖譜)-->B3(java編程) B1(java技能圖譜)-->B4(JVM) B1(java技能圖譜)-->B5(軟件工程) B1(java技能圖譜)-->B6(設計模式) B1(java技能圖譜)-->B7(Linux) B1(java技能圖譜)-->B8(數據) B1(java技能圖譜)-->B9(算法與數據機構) B1(java技能圖譜)-->B10(分佈式系統) B1(java技能圖譜)-->B11(項目經驗) B2(計算機基礎)-->B2_1(操做系統:<現代操做系統>) B2(計算機基礎)-->B2_2(編譯原理) B2(計算機基礎)-->B2_3(計算機網絡) B2(計算機基礎)-->B2_4(互聯網協議) B2_4(互聯網協議)-->B2_4_1(TCP/IP:TCP/IP協議簇) B2_4(互聯網協議)-->B2_4_2(HTTP1.1/2.0) B2_4(互聯網協議)-->B2_4_3(HTTPS) B2_4(互聯網協議)-->B2_4_4(OAuth 2.0) B2_4(互聯網協議)-->B2_4_5(REST) B3(java編程)-->B3_1(IDE) B3(java編程)-->B3_2(版本控制) B3(java編程)-->B3_3(筆記) B3(java編程)-->B3_4(閱讀) B3(java編程)-->B3_5(基礎語法) B3(java編程)-->B3_6(集合框架:源碼) B3(java編程)-->B3_7(工具類) B3(java編程)-->B3_8(JavaEE開發) B3(java編程)-->B3_9(框架) B3(java編程)-->B3_10(服務器) B3(java編程)-->B3_11(高級特性) B3(java編程)-->B3_12(構建) B3(java編程)-->B3_13(安全) B3(java編程)-->B3_14(測試) B3_1(IDE)-->B3_1_1(Eclipse) B3_1(IDE)-->B3_1_2(IntelliJIDEA:在使用) B3_2(版本控制)-->B3_2_1(SVN) B3_2(版本控制)-->B3_2_2(git) B3_3(筆記)-->B3_3_1(Evernote:剪藏功能很強大) B3_3(筆記)-->B3_3_2(有道雲筆記) B3_3(筆記)-->B3_3_3(插件) B3_3_3(插件)-->B3_3_3_1(Chrome Evernote) B3_3_3(插件)-->B3_3_3_2(微信公衆號:evertnote和有道雲筆記) B3_4(閱讀)-->B3_4_1(公衆號) B3_4(閱讀)-->B3_4_2(優質計算機類紙質書) B3_5(基礎語法)-->B3_5_1(JDK8推薦:Java核心技術卷1) B3_6(集合框架:源碼)-->B3_6_1(List) B3_6(集合框架:源碼)-->B3_6_2(Set) B3_6(集合框架:源碼)-->B3_6_3(Map) B3_6(集合框架:源碼)-->B3_6_4(Queue:ConcurrentLinkedQueue) B3_6(集合框架:源碼)-->B3_6_5(Stack) B3_6(集合框架:源碼)-->B3_6_6(Collections的synchronizedXXX方法) B3_6_1(List)-->B3_6_1_1(ArrayList) B3_6_1(List)-->B3_6_1_2(LinkedList) B3_6_2(Set)-->B3_6_2_1(HashSet) B3_6_2(Set)-->B3_6_2_2(TreeSet) B3_6_3(Map)-->B3_6_3_1(HashMap:JDK8的實現與以前版本不一樣) B3_6_3(Map)-->B3_6_3_2(TreeMap) B3_6_3(Map)-->B3_6_3_3(ConcurrentHashMap) B3_7(工具類)-->B3_7_1(Google guava:推薦) B3_7(工具類)-->B3_7_2(Apache common lang/BeanUtils/Collections/IO) B3_7(工具類)-->B3_7_3(JSON) B3_7_3(JSON)-->B3_7_3_1(fastjson) B3_7_3(JSON)-->B3_7_3_2(gson) B3_7_3(JSON)-->B3_7_3_3(jackson) B3_8(JavaEE開發)-->B3_8_1(JSP/Servlet 3.x) B3_8(JavaEE開發)-->B3_8_2(Session/Cookie) B3_8(JavaEE開發)-->B3_8_3(jstl/EL) B3_9(框架)-->B3_9_1(Spring) B3_9(框架)-->B3_9_2(SpringMVC) B3_9(框架)-->B3_9_3(Mybatis) B3_9(框架)-->B3_9_4(shiro) B3_9(框架)-->B3_9_5(Netty) B3_10(服務器)-->B3_10_1(Servlet容器) B3_10(服務器)-->B3_10_2(Nginx/Tengine:Web應用服務器) B3_11(高級特性)-->B3_11_1(泛型) B3_11(高級特性)-->B3_11_2(多態的實現原理) B3_11(高級特性)-->B3_11_3(Lambda) B3_11(高級特性)-->B3_11_4(併發編程) B3_11_4(併發編程)-->B3_11_4_1(Executor框架) B3_11_4(併發編程)-->B3_11_4_2(Fork/join) B3_11_4(併發編程)-->B3_11_4_3(happen-before) B3_11_4(併發編程)-->B3_11_4_4(數據結構) B3_11_4_4(數據結構)-->B3_11_4_4_1(ConcurrentHashMap) B3_11_4_4(數據結構)-->B3_11_4_4_2(ConcurrentLinkedQueue) B3_11_4(併發編程)-->B3_11_4_5(線程池) B3_11_4_5(線程池)-->B3_11_4_5_1(參數設置) B3_11_4_5(線程池)-->B3_11_4_5_2(原理) B3_11_4_5(線程池)-->B3_11_4_5_3(拒絕策略) B3_11_4(併發編程)-->B3_11_4_6(線程狀態) B3_11_4(併發編程)-->B3_11_4_7(Lock/synchronized) B3_11_4(併發編程)-->B3_11_4_8(原子操做類) B3_11_4(併發編程)-->B3_11_4_9(併發工具類) B3_11_4_9(併發工具類)-->B3_11_4_9_1(CountDownLatch) B3_11_4_9(併發工具類)-->B3_11_4_9_2(Semaphore) B3_11_4_9(併發工具類)-->B3_11_4_9_3(CyclicBarrier) B3_11_4_9(併發工具類)-->B3_11_4_9_4(Exchanger) B3_11(高級特性)-->B3_11_5(網絡編程) B3_11_5(網絡編程)-->B3_11_5_1(Socket) B3_11_5(網絡編程)-->B3_11_5_2(基本案例實現) B3_11(高級特性)-->B3_11_6(IO) B3_11_6(IO)-->B3_11_6_1(BIO) B3_11_6(IO)-->B3_11_6_2(NIO) B3_11_6(IO)-->B3_11_6_3(AIO) B3_11(高級特性)-->B3_11_7(序列化) B3_11_7(序列化)-->B3_11_7_1(JDK自帶) B3_11_7(序列化)-->B3_11_7_2(Google probobuf:性能很是高) B3_11(高級特性)-->B3_11_8(遠程調用) B3_11_8(遠程調用)-->B3_11_8_1(RMI) B3_11_8(遠程調用)-->B3_11_8_2(Thrift) B3_11_8(遠程調用)-->B3_11_8_3(Dubbo/DubboX:服務器治理,頁能夠作爲微服務器) B3_11_8(遠程調用)-->B3_11_8_4(gRPC:目前已推出1.0版) B3_12(構建)-->B3_12_1(Maven:推薦Maven實戰) B3_12(構建)-->B3_12_2(Gradle) B3_13(安全)-->B3_13_1(單散列算法:MD5/SHA) B3_13(安全)-->B3_13_2(對稱加密:DES) B3_13(安全)-->B3_13_3(非對稱加密:RSA:HTTPS) B3_14(測試)-->B3_14_1(測試用例) B3_14(測試)-->B3_14_2(百盒) B3_14(測試)-->B3_14_3(黑盒) B3_14(測試)-->B3_14_4(junit) B3_14(測試)-->B3_14_5(Sprint Test) B3_14(測試)-->B3_14_6(CmdExcetor) B4(JVM)-->B4_1(認識Java虛擬機:默認Hostspot實現) B4(JVM)-->B4_2(類加載機制:知道雙親委派模型) B4(JVM)-->B4_3(內存模型) B4(JVM)-->B4_4(GC:回收算法/垃圾收集器) B4(JVM)-->B4_5(調優) B4(JVM)-->B4_6(工具:jstack/jmap/jconsole) B5(軟件工程)-->B5_1(運維) B5(軟件工程)-->B5_2(持續集成:jenkins) B5(軟件工程)-->B5_3(TDD) B5(軟件工程)-->B5_4(原則) B5_4(原則)-->B5_4_1(DRY) B5_4(原則)-->B5_4_2(單一職責) B5_4(原則)-->B5_4_3(開閉原則) B6(設計模式)-->B6_1(工廠模式) B6(設計模式)-->B6_2(代理模式) B6(設計模式)-->B6_3(門面模式) B6(設計模式)-->B6_4(觀察者模式) B6(設計模式)-->B6_5(責任鏈模式) B6(設計模式)-->B6_6(適配器模式) B6(設計模式)-->B6_7(裝飾者模式) B6(設計模式)-->B6_8(單利模式) B7(Linux)-->B7_1(發行版:Server) B7_1(發行版:Server)-->B7_1_1(Ubuntu) B7_1(發行版:Server)-->B7_1_2(Redhat) B7_1(發行版:Server)-->B7_1_3(CenterOS) B7(Linux)-->B7_2(經常使用命令) B7_2(經常使用命令)-->B7_2_1(查看正在執行的進程) B7_2(經常使用命令)-->B7_2_2(查詢指定的進程ID打開的文件) B7_2(經常使用命令)-->B7_2_3(殺死指定PID的進程:PID爲Process ID) B7_2(經常使用命令)-->B7_2_4(計算文件的行數,字數或字符數) B7_2(經常使用命令)-->B7_2_5(顯示進程信息,並實時更新) B7_2(經常使用命令)-->B7_2_6(調用top命令的-H選項,該選項會列出全部Linux線程) B7_2(經常使用命令)-->B7_2_7(查看username的進程所打開的文件) B7_2(經常使用命令)-->B7_2_8(在ps命令中,-T選項能夠開啓線程查看,下面列出的命令列出了由進程號爲進程建立的全部線程) B7_2(經常使用命令)-->B7_2_9(比較兩個文件) B7_2(經常使用命令)-->B7_2_10(後臺執行,經過在shell中輸入exit來退出終端) B7_2(經常使用命令)-->B7_2_11(查看正在執行的任務) B7_2(經常使用命令)-->B7_2_12(多線程執行) B7_2(經常使用命令)-->B7_2_13(查看進程和線程的樹形結構關係) B7_2(經常使用命令)-->B7_2_14(ps命令-L參數顯示進程,並儘可能顯示其LWP:線程ID和NLWP:線程的個數) B7_2(經常使用命令)-->B7_2_15(ps命令查看線程在哪一個CPU熵運行) B7_2(經常使用命令)-->B7_2_16(取出文件的前面幾行) B7_2(經常使用命令)-->B7_2_17(動態查看文件變化) B7_2(經常使用命令)-->B7_2_18(退出tail -f) B7_2(經常使用命令)-->B7_2_19(tail程序放到後臺去:ctrl+z,等處理完其餘事情,在用fg命令將tail命令轉到前臺來) B7_2(經常使用命令)-->B7_2_20(查看文件夾和子目錄的大小) B7_2(經常使用命令)-->B7_2_21(設置定時任務) B7_2(經常使用命令)-->B7_2_22(重命名文件和文件夾) B7_2(經常使用命令)-->B7_2_23(複製,剪切,清空和刪除) B7_2(經常使用命令)-->B7_2_24(Linux通訊) B8(數據)-->B8_1(NoSQL/MongoDB) B8_1(NoSQL/MongoDB)-->B8_1_1(文檔模型) B8_1(NoSQL/MongoDB)-->B8_1_2(分片) B8(數據)-->B8_2(分佈式緩存) B8_2(分佈式緩存)-->B8_2_1(Memocached) B8_2(分佈式緩存)-->B8_2_2(Redis:重要) B8(數據)-->B8_3(關係數據庫) B8_3(關係數據庫)-->B8_3_1(MYSQL) B8_3_1(MYSQL)-->B8_3_1_1(引擎) B8_3_1_1(引擎)-->B8_3_1_1_1(InnoDB:支持事務) B8_3_1_1(引擎)-->B8_3_1_1_2(MyISAM:支持全文索引) B8_3_1(MYSQL)-->B8_3_1_2(分庫分表) B8_3_1_2(分庫分表)-->B8_3_1_1(Cobar) B8_3_1_2(分庫分表)-->B8_3_1_2(Mycat) B8_3_1(MYSQL)-->B8_3_1_3(SQL優化) B8_3_1_3(SQL優化)-->B8_3_1_3_1(索引:主鍵索引/組合索引) B8_3_1_3(SQL優化)-->B8_3_1_3_2(explain) B8_3_1_3(SQL優化)-->B8_3_1_3_3(存儲過程) B8_3_1(MYSQL)-->B8_3_1_4(SQL注入:使用#而不實用$) B8_3_1(MYSQL)-->B8_3_1_5(事物隔離級別:ACID) B8_3_1_5(事物隔離級別:ACID)-->B8_3_1_5_1(原子性) B8_3_1_5(事物隔離級別:ACID)-->B8_3_1_5_2(一致性) B8_3_1_5(事物隔離級別:ACID)-->B8_3_1_5_3(隔離性) B8_3_1_5(事物隔離級別:ACID)-->B8_3_1_5_4(持久性) B8_3_1(MYSQL)-->B8_3_1_6(鎖) B8_3_1_6(鎖)-->B8_3_1_6_1(表鎖) B8_3_1_6(鎖)-->B8_3_1_6_2(行鎖) B8_3_1_6(鎖)-->B8_3_1_6_3(樂觀鎖) B8_3_1_6(鎖)-->B8_3_1_6_4(悲觀鎖) B8_3(關係數據庫)-->B8_3_2(數據庫設計) B8_3_2(數據庫設計)-->B8_3_2_1(範式:第1/2/3範式) B8_3_2(數據庫設計)-->B8_3_2_2(E-R圖) B8_3(關係數據庫)-->B8_3_3(其餘) B8(數據)-->B8_4(搜索引擎) B8_4(搜索引擎)-->B8_4_1(Solr) B8_4(搜索引擎)-->B8_4_2(ElasticSearch) B8(數據)-->B8_5(大數據:Hadoop/Hbase/Spark/Storm/Jstrom) B9(算法與數據機構)-->B9_1(字符串:查找匹配KMP/正則化) B9(算法與數據機構)-->B9_2(數組) B9(算法與數據機構)-->B9_3(鏈表) B9(算法與數據機構)-->B9_4(棧) B9(算法與數據機構)-->B9_5(隊列) B9(算法與數據機構)-->B9_6(樹) B9_6(樹)-->B9_6_1(二叉樹) B9_6_1(二叉樹)-->B9_6_1_1(前序遍歷) B9_6_1(二叉樹)-->B9_6_1_2(中序遍歷) B9_6_1(二叉樹)-->B9_6_1_3(後續遍歷) B9_6(樹)-->B9_6_2(B Tree/B+Tree) B9_6(樹)-->B9_6_3(紅黑樹) B9(算法與數據機構)-->B9_7(哈希:哈希衝突/k-v) B9(算法與數據機構)-->B9_8(圖:BFS/DFS) B9(算法與數據機構)-->B9_9(排序) B9_9(排序)-->B9_9_1(內部排序) B9_9_1(內部排序)-->B9_9_1_1(插入排序:直接插入排序/希爾排序) B9_9_1(內部排序)-->B9_9_1_2(選擇排序:簡單選擇排序/堆排序) B9_9_1(內部排序)-->B9_9_1_3(交換排序:冒泡排序/快速排序) B9_9_1(內部排序)-->B9_9_1_4(歸併排序) B9_9_1(內部排序)-->B9_9_1_5(基數排序) B9_9_1(內部排序)-->B9_9_1_6(桶排序) B9_9(排序)-->B9_9_2(外部排序) B10(分佈式系統)-->B10_1(從集中式到分佈式) B10(分佈式系統)-->B10_2(分佈式Session:Session複製/Session綁定/Session服務器) B10(分佈式系統)-->B10_3(分佈式緩存:Redis/一致性hash) B10(分佈式系統)-->B10_4(數據庫) B10_4(數據庫)-->B10_4_1(讀寫分離:主從熱備) B10_4(數據庫)-->B10_4_2(分庫) B10_4(數據庫)-->B10_4_3(分表) B10(分佈式系統)-->B10_5(一致性) B10_5(一致性)-->B10_5_1(分佈式事務:CAP/BASE/2PC/3PC/Paxos) B10_5(一致性)-->B10_5_1(分佈式鎖:Redisson) B10(分佈式系統)-->B10_6(負載均衡) B10_6(負載均衡)-->B10_6_1(硬件:F5) B10_6(負載均衡)-->B10_6_2(軟件:LVS) B10(分佈式系統)-->B10_7(消息隊列) B10_7(消息隊列)-->B10_7_1(RabbitMQ) B10_7(消息隊列)-->B10_7_2(ZeroMQ) B10_7(消息隊列)-->B10_7_3(ActiveMQ) B10_7(消息隊列)-->B10_7_4(Kafka) B10(分佈式系統)-->B10_8(服務化) B10_8(服務化)-->B10_8_1(服務註冊與發現:Zeekeeper) B10_8(服務化)-->B10_8_2(架構) B10_8_2(架構)-->B10_8_2_1(微服務:Spring Boot/Dubbo) B10_8_2(架構)-->B10_8_2_2(RPC) B10_8_2(架構)-->B10_8_2_3(SOA) B10(分佈式系統)-->B10_9(虛擬化:Docker) B10(分佈式系統)-->B10_10(計算平臺:實時/離線) B10(分佈式系統)-->B10_11(容災,異地多活) B11(項目經驗)-->B11_1(角色) B11(項目經驗)-->B11_2(成果) B11(項目經驗)-->B11_3(思路) B11(項目經驗)-->B11_4(技術棧)

B1(java技能圖譜)-->B10(分佈式系統)
B1(java技能圖譜)-->B11(項目經驗)算法

graph TD test.model.LogisticRankTest-->B2[client.service.RecsysSortService] test.model.LogisticRankTest-->B4[recsyssort] B2[client.service.RecsysSortService]-->B1[client.model.RecsysSortResult<br/>RecsysSortResult的定義] B1[client.model.RecsysSortResult<br/>排序定義]-->B7[core.biz.RecsysSortBiz<br/>排序實現] B7[core.biz.RecsysSortBiz<br/>排序實現]-->B8[core.entity.SortAlgorithm] B8[core.entity.SortAlgorithm]-->B9[註冊和調用構造好的<br/>排序方法和名稱] B7[core.biz.RecsysSortBiz<br/>排序實現]-->B10[core.util.EagleUtil] B10[core.util.EagleUtil]-->B11(定義排序長度和同一<br/>類目最多返回商品數) B9[註冊和調用構造好的<br/>排序方法和名稱]-->B12[core.biz.rank.impl.LogisticRank<br/>LR實現方法] B12[core.biz.rank.impl.LogisticRank<br/>LR實現方法]-->B13[core.biz.rank.RankV1<br/>排序接口,定義輸入格式] B12[core.biz.rank.impl.LogisticRank<br/>LR實現方法]-->B14[core.biz.rank.uds.LogisticUDS<br/>從UDS配置中讀取數據表] B12[core.biz.rank.impl.LogisticRank<br/>LR實現方法]-->B3[core.entity.RedisClusterName] B12[core.biz.rank.impl.LogisticRank<br/>LR實現方法]-->B15[core.dao.rank.LogisticRankDao<br/>鏈接數據庫] B3(core.entity.RedisClusterName)-->B21[定義redis庫名,不須要修改] B21[定義redis庫名,不須要修改]-->B17(從UDS配置中讀取數據表) B13[core.biz.rank.Rank]-->B16(排序接口,定義輸入格式<br/>已修改) B14[core.biz.rank.uds.LogisticUDS]-->B17(從UDS配置中讀取數據表) B15[core.dao.rank.LogisticRankDao]-->B5[core.util.HSRedisUtil] B15[core.dao.rank.LogisticRankDao]-->B6[core.util.RedisBaseUtil] B5[core.util.HSRedisUtil]-->B18(獲取用戶商品和權重特徵<br/>已修改 獲取權重未生效?) B6[core.util.RedisBaseUtil]-->B18(獲取用戶商品和權重特徵<br/>已修改 獲取權重未生效?) B4(recsyssort)-->B22(定義排序服務,不須要修改)

例子:B8[core.entity.SortAlgorithm]-->B9[註冊和調用構造好的
排序方法和名稱]
一、前面的B只起到指示做用,無附加含義
二、數字8起到流程圖中每一個流程塊的區分做用,最好不要重複
三、中括號"[]"表示圖塊的形狀,不一樣的括號表示了不一樣的形狀,能夠修改嘗試
四、<br/>換行,不然都顯示在同一行中
五、符號-->表示標準的箭頭,其餘線條後續再嘗試
六、graph TD表示流程圖是自上而下的,TD換成LR表示自左向右
七、流程圖的標識爲: ```mermaidshell

相關文章
相關標籤/搜索