原创 final、finally和finalize的區別總結

1、final Final可以用於成員變量(包括方法參數),方法、類。 Final成員  作爲變量 變量一旦被初始化便不可改變(對於基本類型,指的是值不變;對於對象類型,指的是引用不變),初始化只可能在兩個地方:定義處和構造函數。 作爲方

原创 SpringMVC工作原理詳解

SpringMVC的工作原理圖: SpringMVC流程 1、  用戶發送請求至前端控制器DispatcherServlet。 2、  DispatcherServlet收到請求調用HandlerMapping處理器映射器。 3、  處

原创 併發、並行傻傻分不清楚?

今天,我們正在解決一個問題: 同時的,同時的愚蠢的困惑?線程在其生命週期中經歷了什麼? 知識給你解答生活中所有困難的問題。 =concurrent和parallel== 併發是指在一定時間內,多任務交替處理的能力。並行性是指同時處理多個任

原创 Java併發編程之阻塞隊列與Fork/Join框架

阻塞隊列 阻塞隊列是支持兩個附加操作的隊列。這兩個附加操作支持阻塞插入和移除方法: 阻塞啓用的插入:當隊列滿時,它會阻塞插入元素的線程,直到隊列不滿意爲止。 阻塞刪除:當隊列爲空時,檢索元素的線程等待隊列變爲非空。 阻塞隊列通常用於生產者

原创 Java數據流的所有應用場景全面總結

數據流是一種數據分發技術。數據生成器將數據記錄寫入順序數據流。數據使用者可以按照相同的順序從數據流中讀取數據。這是一個用於數據生產者、數據流和數據消費者的簡單數據流圖:     數據流可以有很多變量 從“表面”的角度來看,數據流是一個非

原创 記一位朋友斬獲BAT技術專家Offer的面試經歷

背景介紹 PS: 面試者是筆者以前的下屬,多年的好朋友。 這是他今年早些時候出去面試,拿到BAT等多家一線互聯網公司技術專家Offer的面試經歷。 先介紹一下這位朋友的個人經歷: 本科畢業,接近10年工作經驗。跳槽之前,在國內某大型互聯網

原创 Java Stream API實用指南

StreamAPI是在Java 8中引入的。它提供了一種聲明性編程方法,用於迭代和執行集合上的操作。在Java 7及之前版本中,for和for each是唯一遍歷集合的可用選項,這是一種 命令式編程方法。在本文中,我將向您介紹Stream

原创 Spring AOP用法詳解

什麼是AOP AOP(Aspect-Oriented Programming,面向方面編程),可以說是OOP(Object-Oriented Programing,面向對象編程)的補充和完善。OOP引入封裝、繼承和多態性等概念來建立一種對

原创 SLF4J源碼解析(一)

提出問題 閱讀源碼之前,首先提幾個問題 SLF4J是如何整合不同的日誌框架的 Class Path中爲什麼只能有且僅有一種日誌框架的binding 這段文字摘錄自官網:In your code, in addition to slf4j

原创 全面解析Java HashMap類

HashMap也是一個常用的Java集合框架類,它涉及大量的知識,包括數組、鏈表、紅黑樹等,以及一些高效而巧妙的計算,並且這個類已經被改進了幾個版本,不同版本之間也有一些差異,這裏都是基於JDK8的源代碼。像通常的源代碼翻譯一樣,看看能否

原创 Java第三方支付接入案例(支付寶)

開源項目鏈接 Kitty 開源權限管理系統 項目地址:https://gitee.com/liuge1988/kitty 演示地址:http://139.196.87.48:9002/kitty 用戶名:admin 密碼:admin 註冊

原创 Java NIO之Selector

這篇文章來介紹一下另一個比較重要的概念----Selector。我們知道系統線程的切換是消耗系統資源的,如果我們每一個連接都用一個線程來管理,資源的開銷會非常大,這個時候就可以用Selector。通過Selector可以實現一個線程管理多

原创 Java重點基礎:反射機制

一、什麼是反射? Java反射說的是在運行狀態中,對於任何一個類,我們都能夠知道這個類有哪些方法和屬性。對於任何一個對象,我們都能夠對它的方法和屬性進行調用。我們把這種動態獲取對象信息和調用對象方法的功能稱之爲反射機制。 二、反射的三種方

原创 Java內存模型詳解

一、Java內存模型 硬件處理 電腦硬件,我們知道有用於計算的cpu、輔助運算的內存、以及硬盤還有進行數據傳輸的數據總線。在程序執行中很多都是內存計算,cpu爲了更快的進行計算會有高速緩存,最後同步至主內存,大概的交互如下圖 爲了使處理

原创 系統架構中爲什麼要引入消息中間件?

“在本文的開頭,我們將討論消息中間件的高頻訪問問題,它也將涵蓋MQ中間件的一些常見技術問題。如果面試官看了你的簡歷中使用MQ中間件的經歷,可能會有以下問題:在你的公司的生產環境中使用了什麼消息中間件?爲什麼要將消息中間件引入系統?引入消息