原创 MySQL的for update使用(行級鎖)

在默認的MySQL查詢操作是不添加鎖的 在需要先讀再寫入的事務裏,會出現讀的數據被其他事務所更改,從而導致錯誤。這時可以在select語句後面添加for update達到鎖的效果,但是for update默認是鎖表的,這樣會對性能

原创 docker實現單節點consul的服務註冊於發現

一 搭建consul環境 1.從docker-hub上搜索拉取鏡像 docker search consul docker pull consul 2 . 啓動consul鏡像 單節點啓動: docker run -p 850

原创 mysql-binlog-connector-java無法監聽到日誌的解決辦法 (Trying to restore lost connection to localhost:3306)

本地代碼 public class BinlogServiceTest { public static void main(String[] args) throws IOException { Bin

原创 Mysql binlog日誌學習(what?作用,格式)

一、binlog是什麼 Binlog是Mysql sever層維護的一種二進制日誌,但是不能把binlog文件等同於innodb引擎中的redo/undo log。 主要是用來記錄對mysql數據更新或潛在發生更新的SQL語句,並

原创 windows 開啓mysql的binlog日誌

一、查看binlog日誌是否開啓 show global variables like ‘log_bin’; 如果返回的是 log_bin | OFF 那麼就是沒有開啓,ON 則是已經開啓,我這裏已經開啓了。 二、設置binlo

原创 GSON的序列化問題-(子類於父類具有相同屬性)

背景 因爲fastjson的安全漏洞問題,項目中不得不將fastjson更換。研究之後決定採用gson做序列化。 場景 因原序列化代碼,用在reids中,重寫了序列化方法,報序列化bug之後這也誤導了我們一段時間。 GSON序列化

原创 一次導入2w行的表格,並通過註解校驗字段

背景 最近項目中有一個需求,需要一次通過excel導入大量的數據。之前用的easypoi測試需要大約一小時才能完成,這樣明顯是不行的。 深入瞭解之後,其實只需要將批式處理改爲流式處理便可以解決解析慢的問題。綜合考慮後選用了easy

原创 Java如何決定對象的生死及對象該如何逃脫?

垃圾收集器在對堆進行回收前,第一件事情就是要確定這些對象中哪些還“存活”,哪些已經“死去”。 引用的分類 Java將引用分爲4種: 強引用:指在程序代碼之中普遍存在的引用賦值,即類似 “Object obj = new Obj

原创 深入理解JAVA虛擬機- Java內存區域與對象揭祕

此文是對《深入理解JAVA虛擬機》的一點總結,如果想要了解具體細節可以去看原書。 運行時數據區域 Java虛擬機在執行Java程序的過程中會把內存劃分爲若干個不同的數據區域。如下圖所示: 程序計數器 程序計數器可以看作是當前線程

原创 【JAVA書單】-《JAVA多線程核心技術》-第一章 多線程技能

此文是對《JAVA多線程編程核心技術》的一點總結,如果想要了解具體細節可以去看原書。 第一章 多線程技能 線程的啓動 實現多線程編程的方式主要有兩種,一種是繼承Thread類,另一種是實現Runnable接口。 1.繼承Thre

原创 【JAVA書單】-《JAVA多線程核心技術》-第三章 線程間通信

此文是對《JAVA多線程編程核心技術》的一點總結,如果想要了解具體細節可以去看原書。 第三章 線程間通信 使用wait/notify實現線程間的通信 方法wait()的作用是使當前執行代碼的線程進行等待,wait()方法是Obj

原创 【JAVA書單】-《JAVA多線程核心技術》-第六章 單列模式與多線程

此文是對《JAVA多線程編程核心技術》的一點總結,如果想要了解具體細節可以去看原書。 第六章 單列模式與多線程 我之前最經常使用的單列: public class MyObject { private volatile s

原创 看看下面的代碼,你真的理解了包裝類和自動裝箱嗎?

廢話不多說,上代碼 public class Zms{ public static void main(String[] args) { Integer a = 1; Integer b

原创 【JAVA書單】-《JAVA多線程核心技術》-第四章 Lock的使用

此文是對《JAVA多線程編程核心技術》的一點總結,如果想要了解具體細節可以去看原書。 第四章 Lock的使用 lock和synchronized的區別 用法: synchronized:在需要同步的對象中加入此控制,synch

原创 spring 跨域重複問題

最近在項目中發現了一個跨域問題。 後臺和前端都設置了跨域仍然報跨域 爲什麼會有跨域問題 出於瀏覽器的同源策略限制。同源策略(Sameoriginpolicy)是一種約定,它是瀏覽器最核心也最基本的安全功能,如果缺少了同源策略,則瀏