原创 JVM - 逃逸分析、棧上分配、標量替換、同步消除

1、先來個開胃菜(靈魂拷問): 下面這兩份代碼哪個好,(從jvm層面考慮的話)好在哪? public StringBuffer createString1(String ... values){ StringBuffer str

原创 jvm內存模型、jvm內存結構、Java內存結構、Java內存模型(JMM)、Java對象模型的區別(吐血研究整理)

jvm內存模型:  JVM內存模型則是指JVM的內存分區。jvm內存模型 == jvm內存結構 ==  Java內存結構!!!漢語雖然博大精深,但是也經常會因爲命名很雷同讓人懵逼或者混淆不清。 jvm內存結構: Java內存結構: 可以簡

原创 Mysql事務和鎖的深入研究(親測權威版,看完後徹底搞懂)

本博文以思想指導實踐來驗證論點並加以總結歸納,切忌死記硬背。本博文的所有demo都很詳細,各位可以自行在自己的數據庫中做測試驗證。 1、入門準備工作 1.1、#建表語句 CREATE TABLE `student` (     `id`

原创 鏈表的多種翻轉算法java版(由淺入深,逐個擊破)

前言: 本文先從鏈表的翻轉算法和鏈表兩兩交換的算法講起,最後糅合起來講解K個一組的鏈表翻轉算法。 1、206. 反轉鏈表 問題描述: 反轉一個單鏈表。 示例: 輸入: 1->2->3->4->5->NULL 輸出: 5->4->3->2-

原创 java NIO分析之前世今生

本文目的:把握IO歷史車輪的脈搏,知其然(瞭解NIO,NIO等),知其所以然(爲啥會有NIO,爲啥這麼設計NIO,這麼設計的好處是什麼)。 一、核心概念的理解 1、Java I/O模型 貫穿了整個java的各種IO的變革歷史,各種方案其實

原创 遞歸的套路

分治和回溯 本質上就是一種特殊的遞歸(較爲複雜的遞歸)。碰到算法問題先找重複性,最優的重複性就是動態規劃,最近的重複性根據重複性怎麼構造怎麼分解就有什麼分治或者最後要回溯或者實在其他的各種辦法,但本質上其實就是一種遞歸,就是要去找它的重複

原创 最全的樹的遍歷算法(遞歸和非遞歸)

樹的算法如下:非遞歸的算法中,中序和後續遍歷稍微難寫一些 ,需要多練。其餘的基本是模板方式,多橫向對比感受下。 import java.util.Stack; public class SearchTree { public

原创 mybatis參數傳遞的問題

mybatis參數傳遞的問題:如何傳遞一個參數並在xxxMapper.xml中拿到參數值用於sql操作?如何傳遞多個參數並在xxxMapper.xml中拿到參數值用於sql操作? 1.基本數據類型只能傳一個(int,String,Data

原创 RPC-client異步收發核心細節

要實施微服務,首先要搞定RPC框架,RPC框架分爲客戶端部分與服務端部分。RPC-client的部分又分爲:(1)序列化反序列化的部分(上圖中的1、4)(2)發送字節流與接收字節流的部分(上圖中的2、3)前一篇文章討論了序列化

原创 java後臺將數據寫入CSV文件的坑

java後臺將數據寫入CSV文件時踩過的坑:寫入一些數據(例如我碰到過的:訂單日期、聯行行號、(收款)銀行賬號、金額)時候,由於數字比較多會導致顯示成縮略形式或者科學計數法 ,例如下圖: 解決方案是:在寫入字段時候,在可能發

原创 超級實用的linux命令:tail 命令

linux中的tail命令:超級實用的在linux系統上查看日誌文件,排查故障的利器 tail 命令從指定點開始將文件寫到標準輸出.使用tail命令的-f選項可以方便的查閱正在改變的日誌文件,tail -f filena

原创 5分鐘秒懂xml頭文件

本着精簡不羅嗦以及清晰理解的原則,直接上代碼進行詳解。 <project xmlns="http://maven.apache.org/POM/4.0.0"   --命名空間,類似包名,因爲xml的標籤可自定義,需要命名空間來區分。起作用

原创 程序員必知必會的Mock技能-結合spring的mock靜態方法

一、痛點問題 1.1、如何mock靜態方法 1.2、mock很容易造成代碼覆蓋率的下降,如何提升代碼覆蓋率 二、準備工作 2.1、技術選型:powerMock 爲何常見的Mockito不能mock靜態方法? 因爲Mockito使用繼承的方

原创 linux vi文本處理器(模式轉換,常用命令)

 vi分三種模式:一般模式,編輯模式,命令行模式。 1. 一般模式: 一般在進入文件時就是該模式,在此模式中,可以通過上下左右鍵移動光標,可以刪除字符或是刪除整行,可以複製粘貼,但不能編輯。  2. 編輯模式: 一般模式可以複製粘貼刪除,

原创 互聯網金融入門篇(一) 借方和貸方

借方和貸方 在會計中“借(Debit)”、“貸(Credit)”沒有什麼具體含義,只是一個符號而已。 所以看到“借”、“貸”後,不要望文生義,認爲“借”就是借入,表示增加;“貸”表示貸款,或是貸出。 下面舉例說明:我們把個人作爲一家企