原创 java Spi與SpringFactoriesLoader 一、java spi 1、什麼是Spi 2、Spi的應用場景 3、Spi的簡單demo 4、Spi源碼分析

spring的SpringFactoriesLoader是spring框架內部工具類,在 Spring boot 應用啓動的過程中,這個類的工作很重要, 啓動邏輯使用該類從classpath上所有jar包中找出各自的 META-INF/sp

原创 211本+985碩+計算機專業投面百度,坐等一週迎來三面,已拿offer 背景 一面 二面(一週後) 三面 機會是留給有準備的人 總結

背景 計算機六年入門選手,大大小小面試了不少,從小白一路成長而來,也希望能幫助到學弟學妹們。本面試經驗只適用於我這種普普通通沒有背景的萌新,大神勿擾 先介紹一下個人情況211本+985碩+計算機專業,參與的是百度提前批java開發,已拿of

原创 詳解線程池的作用及Java中如何使用線程池 一、什麼是 Java 中的線程池? 執行器線程池方法 二、線程池示例 創建線程池處理任務要遵循的步驟 示例執行結果 三、使用線程池的注意事項與調優

服務端應用程序(如數據庫和 Web 服務器)需要處理來自客戶端的高併發、耗時較短的請求任務,所以頻繁的創建處理這些請求的所需要的線程就是一個非常消耗資源的操作。常規的方法是針對一個新的請求創建一個新線程,雖然這種方法似乎易於實現,但它有重大

原创 JVM Thread Dump 文件分析

JAVA Thread Dump 文件分析 Thread Dump介紹 Thread Dump是非常有用的診斷Java應用問題的工具。每一個Java虛擬機都有及時生成所有線程在某一點狀態的thread-dump的能力,雖然各個 Java虛擬

原创 SpringBoot四大核心之自動裝配——源碼解析 四大核心 初學體驗 言歸正傳 演示收尾

四大核心 1、自動裝配:簡單配置甚至零配置即可運行項目 2、Actuator:springboot程序監控器 3、starter:jar包的引入,解決jar版本衝突問題 4、CLI:命令行 初學體驗 記得剛開始學自動裝配的時候,有兩個

原创 裸辭之後集中Java面試,憑藉一個技術套路了多個面試官,最後竟然拿到7個offer!

前段時間開始集中面試,連拿了7個offer,雖然現在入職的不是BAT,但也算是細分領域裏的準獨角獸公司了。分享一下前段時間程序員小建第三面的面試經歷吧,希望可以對你有所幫助哈。 面試官:一面、二面他們對你的評價很高啊。我看你寫着精通Spr

原创 Java內存泄漏檢測庫LeakCanary介紹,瞭解? 我們看錯了 什麼是內存泄漏? 定位內存泄漏 引進 LeakCanary 結論

LeakCanary:Android和Java的內存泄漏檢測庫。 java.lang.<a href="http://javakk.com/tag/outofmemoryerror" title="查看更多關於 OutOfMemoryErr

原创 Java內存泄漏和垃圾收集器是什麼樣的關係呢 Java內存泄漏 內存太多

在這篇博文中,我想詳細介紹一下 java.lang.OutOfMemoryError 錯誤這個錯誤是如何在Java應用程序中發生的。 在前面的條目中,我們看到 **OutOfMemoryError **有完全不同的類型。然而,最常見的錯誤是

原创 Netty時間輪調度算法原理分析,再不瞭解你就out啦

一、時間輪介紹 之前公司內部搭建的延遲隊列服務有用到時間輪,但是一直沒有了解過它的實現原理。 最近有個和支付寶對接的項目,支付寶接口有流量控制,一定的時間內只允許 N 次接口調用,針對一些業務我們需要頻繁調用支付寶開放平臺接口,如果不對請求

原创 Java數組,這一篇文章就真夠了 何謂數組 數組的應用場景 數組的存儲結構 數組的長度 數組的處理 數組的打印 數組轉集合 數組內容查找 小結

雖然隨着Java版本的演變,數組的分量在慢慢減弱,日常使用時大多使用List進行替代。但ArrayList底層依舊採用數組來進行實現,而數組依舊有很多應用的場景。在使用數組的過程中,你是否彙總過數組的特性及功能,並停下來思考幾個爲什麼呢?如

原创 能講一下Spring用了哪些設計模式嗎? 思維導圖 概述 工廠模式 單例模式 策略模式 代理模式 模板模式 適配器模式與責任鏈模式 觀察者模式 事件角色 事件發佈者 事件監聽者 絮叨

思維導圖 概述 一個優秀的框架肯定離不開各種設計模式的運用,Spring框架也不例外。因爲網上很多文章比較散亂,所以想總結一下在Spring中用到的設計模式,希望大家看完之後能對spring有更深層次的理解。 工廠模式 工廠模式我們都知道

原创 SpringCloud 項目pom.xml配置

首先聲明,本項目整體用的是SpringCloud+SpringBoot+Mybatis-plus框架 根項目pom.xml配置如下: <?xml version="1.0" encoding="UTF-8"?> <project xmln

原创 配置 Spring Batch 批處理失敗重試機制 1. 引言 2. 簡單舉例 3. ItemProcessor 中添加重試 4. 測試重試次數 5. 使用XML配置重試 6. 簡單總結

1. 引言 默認情況下,Spring批處理作業在執行過程中出現任何錯誤都會失敗。然而有些時候,爲了提高應用程序的彈性,我們就需要處理這類間歇性的故障。 在這篇短文中,我們就來一起探討 如何在Spring批處理框架中配置重試邏輯 。 2. 簡

原创 Class.forName與ClassLoader的區別 前言

前言 今天看Java代理的一些文章的時候,通過動態代理想到了反射的問題,然後就想到了以前面試的時候被問到的一個面試問題: Class.forName與ClassLoader的區別? ,自己當時雖然回答上來了,但是回答的並不具體,今天有空做個

原创 一張圖徹底理解Spring如何解決循環依賴 寫在前面 圖解Spring循環依賴

寫在前面 最近,在看Spring源碼,看到Spring解決循環依賴問題的源碼時,不得不說,源碼寫的太爛了。像Spring這種頂級的項目源碼,竟然存在着這種xxx的代碼。看了幾次都有點頭大,相信很多小夥伴都會跟我有一樣的感受。怎麼辦呢?還是踏