原创 《java併發編程實戰》筆記(無代碼)

文章目錄第一部分基礎知識二.線程安全性三.對象的共享3.1 不變性3.2 線程封閉3.3 對象的發佈3.4 安全發佈的常用模式3.5 在線程安全容器內部同步3.6 在併發程序中使用和共享對象時的實用策略四.對象的組合4.1 設計線

原创 jdk1.8之前hashMap頭插法導致的get方法死循環

問題 在併發的情況下hashMap除了會造成數據的髒讀外在jdk1.8之前還會造成死鎖 原因 主要原因是,使用頭插法。但是在jdk1.8及之後時,使用的是數組+鏈表+紅黑樹的數據結構(當鏈表的深度達到8的時候,也就是默認閾值,就會

原创 Java try-with-resource語法

JDK1.7之前 在JDK1.7之前要確保外部資源關閉一般使用finally,如下 FileInputStream inputStream = null; try { inputStream = new FileInput

原创 vue2.0 實例的生命週期方法

生命週期圖 示例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="wi

原创 Java線程轉儲和分析(jstack 命令)

代碼 下面代碼將產生一個死鎖。thread-1獲取lockA後,等待lockB,thread-2獲取lockB後,等待lockA。 public class { private final static Lock l

原创 hashMap儲存鍵值對方式

可變對象:指創建後自身的哈希值可能被改變的對象。 hashMap儲存鍵值對方式 插入 HashMap用Key的哈希值來存儲和查找鍵值對。當插入一個value時,HashMap會計算Key的哈希值然後把value和這個哈希值相關

原创 BigDecimal加減乘除計算及舎入模式

運算函數 加法 add()函數 減法subtract()函數 乘法multiply()函數 除法divide()函數 絕對值abs()函數 示例 BigDecimal num1 = new BigDecimal(100); B

原创 SpringCloud之Feign的簡單實例,包括聲明式REST調用及容錯處理(springboot2.2.2RELEASE)

feign說明 服務之間都是以 HTTP 接口的形式對外提供服務的。消費者在進行調用的時候,底層是通過 HTTP Client 進行訪問。也可以使用JDK原生的 URLConnection、Apache 的 HTTP Clien

原创 順序表、單鏈表、雙鏈表、循環鏈表、有序表

順序表 在Java中線性表的順序表的存儲結構是利用數組來實現的,存儲空間是連續的。存儲空間的起始位置就是由數組名錶示的地址常量。 實例 ArrayList也是用數組實現的,其內部維護了一個數組,是一種可變長度的數組。 數組在創建時

原创 MyBatis 中resultType屬性

resultType:MyBatis中resultType是用來指定查詢結果類型的屬性 一.返回一般數據類型 對於引用類型一般採用大寫字母轉小寫的方式。基本類型一般在前面加"_",下面給了兩個例子 string mapper接

原创 Java指令重排和happens-before規則

指令重排 重排序:Java 語言規範規定了JVM線程內部維持順序化語義,也就是說只要程序的最終結果等同於它在嚴格的順序化環境下的結果,那麼指令的執行順序就可能與代碼的順序不一致。這個過程叫做指令的重排序。 指令重排序存在的意義

原创 Java 中synchronized關鍵字及volatile的可見性實現

JMM(JAVA內存模型) JMM工作原理如上圖所示,一些被定義的變量都存放在主內存中,當一個線程想要修改一個變量的值時,那麼這個變量會從主內存中拷貝到線程的工作內存(CPU緩存)中。之後線程對變量值做了更改,又會重新拷貝回主內

原创 《Maven官方文檔》-Maven依賴機制簡介

依賴機制是Maven最爲用戶熟知的特性之一,同時也是Maven所擅長的領域之一。單個項目的依賴管理並不難,但是當你面對包含數百個模塊的多模塊項目和應用時,Maven能幫你保證項目的高度控制力和穩定性。 文章目錄一.傳遞性依賴二.依

原创 @NotNull和@NonNull的區別和使用

區別 @NotNull在類字段中使用,表示該字段不能爲空。它是 JSR303(Bean的校驗框架)的註解。在調用controller的方法中加入@Valid就可以驗證該方法參數中該類的對應屬性是否爲空,如果爲空,註解中的提示信息會

原创 Java JDK1.8中類常量池、運行時常量池、字符串常量池所處區域

類常量池 誕生時間:編譯時 所處區域:堆(類常量池存在Class文件中,一個Class文件對應一個類常量池) 儲存內容:符號引用和字面量。 字符串常量池 誕生時間:編譯時 所處區域:堆 儲存內容:堆內的字符串對象的引用和字符串常量