原创 OAuth2 Token 一定要放在請求頭中嗎?

Token 一定要放在請求頭中嗎? 答案肯定是否定的,本文將從源碼的角度來分享一下 spring security oauth2 的解析過程,及其擴展點的應用場景。 Token 解析過程說明 當我們使用 spring security o

原创 java中強軟弱虛引用的妙用

前言 ThreadLocal 在什麼情況下可能發生內存泄漏?如果你想清楚這個問題的來龍去脈,看源碼是必不可少的,看了源碼之後你發現, ThreadLocal 中用到 static class Entry extends WeakRefer

原创 ThreadLocal底層原理學習

1. 是什麼? 首先ThreadLocal類是一個線程數據綁定類, 有點類似於HashMap<Thread, 你的數據> (但實際上並非如此), 它所有線程共享, 但讀取其中數據時又只能是獲取線程自己的數據, 寫入也只能給線程自己的數據

原创 新來的同事用策略模式把if else給 優化 了,技術總監說:能不能想好了再改?

目前在魔都,貝殼找房是我的僱主,平時關注一些 java 領域相關的技術,希望你們能在這篇文章中找到些有用的東西。個人水平有限,如果文章有錯誤還請指出,在留言區一起交流。 我想大家肯定都或多或少的看過各種“策略模式”的講解、佈道等等,這

原创 Netty源碼分析之自定義編解碼器崩潰堆棧還原技術大揭祕

0x00 前言 當應用出現崩潰的時候,程序員的第一反應肯定是:在我這好好的,肯定不是我的問題,不信我拿日誌來定位一下,於是千辛萬苦找出用戶日誌,符號表,提取出崩潰堆棧,拿命令開幹,折騰好一個多小時,拿到了下面的結果: addr2line

原创 最近面試了一個連引用都不懂的Java程序員

最近就說到了一個面試題 談談對Java中幾種引用的理解。 因此打算以該面試題爲例子,寫篇文章說說在Java中引用是什麼以及怎麼用。 【劃重點:給你三秒鐘時間思考,如果是你,該如何回答面試官的這個問題呢】 引用是什麼 【劃重點】在Jav

原创 兩地三中心,對“業務中斷”say no!

​隨着互聯網業務快速發展,多IDC的業務支撐能力和要求也逐步提升,行業內的“兩地三中心”方案較爲流行,今天爲您介紹一下到底這是什麼? 其中兩地是指同城、異地;三中心是指生產中心、同城容災中心、異地容災中心。 在早期,比較典型的是國內外

原创 當一個http請求來臨時,SpringMVC究竟偷偷幫你做了什麼?

一、簡介 Spring MVC是一個基於Java的實現了MVC設計模式的請求驅動類型的輕量級Web框架,通過把Model,View,Controller分離,將web層進行職責解耦,把複雜的web應用分成邏輯清晰的幾部分,簡化開發,減少出

原创 那些年與面試官交手過的數據庫索引

我坐在面試官的對面,聲情並茂的做着自我介紹,面試官小哥哥面無表情的翻看着我的簡歷。不知道是小哥哥過於高冷還是被我的簡歷吸引,2分鐘了,小哥哥還是沒有和我講一句話。嚶嚶嚶~看起來似乎有兩下子。不過無所謂,這些都不重要。 什麼是索引? 面試官

原创 最適合初學者的“動態規劃”教程

我在刷leetcode時發現了一篇對“動態規劃”講的非常透徹的文章,迫切的想分享給大家。幾經波折終於獲得@liweiwei1419的轉載授權原文地址,在此表示感謝,下文會以leetcode的一道算法題“按摩師”來教大家使用“動態規劃”來解

原创 一文秒懂java到底是值傳遞還是引用傳遞

原文鏈接 首先回顧一下在程序設計語言中有關將參數傳遞給方法(或函數)的一些專業術語。按值調用(call by value)表示方法接收的是調用者提供的值,而按引用調用(call by reference)表示方法接收的是調用者提供的變

原创 你不知道的Java:類加載與字節碼

Java類加載機制總結 本部分整理自《深入理解JVM虛擬機》 類的生命週期與加載時機 類的生命週期 一個類從被加載到虛擬機內存中開始,到被卸載出內存爲止,整個生命週期包括了 加載、驗證、準備、解析、初始化、使用和卸載7個階段。其中 驗證

原创 分析了上千張照片發現:R 語言程序員最快樂,Java 開發者最年輕

作者 | Ing. Jan Jileček 譯者 | 無名 策劃 | 張曉楠 在 IT 的世界裏,人們形成了很多種刻板印象,比如“PHP 是最差的編程語言”,或者“Python 只適合初學者”。所幸的是,我們可以通過 GitHub 和開

原创 HashMap是如何遍歷的

前言 其實用上 JDK1.8 纔是近些時日的事,畢竟沒有什麼新的技術點必須要去用,也懶得去換 JDK 的版本了。這幾天在某論壇裏看到一個有關於“HashMap如何遍歷”的問題,靜心一想也就知道那麼一兩種,於是想了想還是總結總結吧。 遍歷方

原创 RocketMq之事務消息實現原理

RocketMQ提供了事務消息的功能,採用2PC(兩段式協議)+補償機制(事務回查)的分佈式事務功能,通過消息隊列 RocketMQ 版事務消息能達到分佈式事務的最終一致。 概覽 半事務消息: 暫不能投遞的消息,發送方已經成功地將消息發