原创 工場模式

工廠模式的作用就是將類的實例化的過程封裝起來,可以實例化各種類。形象化解釋就是,用戶給工廠一個產生a零件的請求,工廠就生產a零件給用戶。(告訴名稱,得到實物)   class factory{ public operate creat

原创 spring 攔截器配置到方法

spring mvc的配置   攔截器的寫法    

原创 java線程池(二)

創建線程參數的設置 線程運行時間 :x s 每條需要處理任務數:t 個 核心線程池大小 corePoolSize = t * x   線程池的注意事項 異常處理 子線程的異常不會被父線程感知。需要做處理  

原创 java多線程基本知識點總結

什麼是線程的七種狀態?產生的場合是什麼? java如何常見線程? //java.lang.Thread&java.lang.Rrunable  Runnable r = new Runnable(){ public void ru

原创 springboot內置定時任務

@schedule 註解 註解參數 cron(時間表達式): zone:設置時區  fixedDelay: 時間間隔 fixedRate: 從上個任務開始,經過一段時間執行下一次任務。存在一個任務尚未結束,下一個任務就開始的危險 init

原创 java線程池(一)

目錄 相關背景 線程池的好處 線程池的創建 一、相關背景 1.1線程池的好處 1、減少線程創建和銷燬的開銷 2、防止創建大量現成消耗內存和cpu的頻繁切換 線程頻繁切換:cpu是輪流處理線程的,每次只能處理一個線程。當線程數量較少時,線

原创 求最大公約數

最大公約數 輾轉相除法 相關解釋 歐幾里得算法 gcd(a,b) = gcd(b,a mod b),a>b 且r=a mod b ,r不爲0。 描述: 兩個整數的最大公約數等於其中較小的那個數和兩數相除餘數的最大公約數  證明過程 

原创 通過位運算實現常見運算

(n - 1) & hash   =>  n mod hash 

原创 設計模式

責任鏈模式 abstract class AbstractHander { private AbstractHander nextHander; public void setNextHander(AbstractHa

原创 java創建線程

總共有三種方式,Thread類,Runnable接口,和Callable接口  Callable 以下是使用callable接口的一個例子 public class Main { public static void mai

原创 String和StringBuffer和StringBuilder的區別

本章環境java 1.8 String 字符串拼接會重新生成新的字符串 String a= "123"; String a=a+"123"; 代碼及反編譯結果 public class Main{ public

原创 java基礎之HashMap

本章環境java1.8 hashmap的幾個默認初始值 DEFAULT_INITIAL_CAPACITY 數組默認大小 16 DEFAULT_LOAD_FACTOR 負載因子默認0.75 TREEIFY_THRESHOLD 默認8,鏈

原创 Java的for迭代的實現原理

相信大家都使用過for去實現ArrayList的迭代。是很方便的一個功能,能夠這樣實現的原因是這些類都繼承terator接口。編譯期間編譯器將for的迭代轉化爲for循環的實現形式。具體我們下面看一下  這是使用的代碼 public

原创 java動手實現讀寫鎖

基於synchronized實現讀寫鎖 昨天面試小米基礎平臺,面試官問了一個這樣的題目,讓我自己實現一個讀寫鎖,用lock實現。想了半天lock不會,最後改用synchronized實現  讀寫鎖類的實現 兩個變量read、write

原创 spring 過濾器的訪問順序

過濾的訪問順序是 webxml中的順序 web.xml的配置<filter> <filter-name>defaultFilter</filter-name> <filter-class>com.buaa.nstri.co