原创 面向對象特徵-多態

1、多態的相關概念 多態的意思是:一個事物有多種形態。 多態是指同一方法由於調用對象不同,產生不同的行爲。其實就是對象的多種形態。 系統實現的角度看,多態性分爲兩類:靜態多態和動態的多態。函數的重載和運算符的重載都屬於靜態的多態,在程序編譯

原创 MySql delete刪除數據後釋放磁盤空間

一、Mysql使用delete刪除數據後,不釋放空間 當你刪除數據 時,mysql並不會回收,被已刪除數據的佔據的存儲空間,以及索引位。而是空在那裏,而是等待新的數據來彌補這個空缺,這樣就有一個缺少,如果一時半 會,沒有數據來填補這個空缺

原创 面向對象的特徵之一:抽象

面試題: 面向對象的基本特徵:封裝、繼承、多態 面向對象的特徵:封裝、繼承、多態、抽象 類:一類具有相同特性的事物的抽象描述。 抽象:不明確,不清楚,不確定 反義詞:具體 1、什麼情況下會用到抽象? 我們要聲明(1)圓類(2)矩形類等類型

原创 Java 程序員必備的 Intellij IDEA 插件

以下是我用過不錯的Intellij插件,分享給大家希望能幫到大家。 1. .ignore 地址: https://plugins.jetbrains.com/plugin/7495--ignore 生成各種ignore文件,一鍵創建g

原创 MySQL存儲引擎知多少

MySQL是我們經常使用的數據庫處理系統(DBMS),不知小夥伴們有沒有注意過其中的“存儲引擎”(storage_engine)呢?有時候面試題中也會問道MySQL幾種常用的存儲引擎的區別。這次就簡短侃一下存儲引擎那些事兒。   先去查一下

原创 MySQL優化原則

當MySQL單表記錄數過大時,增刪改查性能都會急劇下降,所以我們本文會提供一些優化參考,大家可以參考以下步驟來優化: 一、單表優化 除非單表數據未來會一直不斷上漲,否則不要一開始就考慮拆分,拆分會帶來邏輯、部署、運維的各種複雜度。一般以整

原创 Spring Redis Cache @Cacheable 大併發下返回null

問題描述 最近我們用Spring Cache + redis來做緩存。在高併發下@Cacheable 註解返回的內容是null。查看了一下源代碼,在使用註解獲取緩存的時候,RedisCache的get方法會先去判斷key是否存在,然後再去

原创 正則表達式字符含義總結

本文旨在用最通俗的語言講述最枯燥的基本知識 文章提綱: 元字符 重複限定符 分組 轉義 條件或 區間 正則表達式在幾乎所有語言中都可以使用,無論是前端的JavaScript、還是後端的Java、c#。他們都提

原创 Redis 的5種基礎數據結構和3種高級數據結構

Redis有5個基本數據結構,string、list、hash、set和zset。它們是日常開發中使用頻率非常高應用最爲廣泛的數據結構,把這5個數據結構都吃透了,你就掌握了Redis應用知識的一半了。 string 首先我們從strin

原创 Mysql底層之binlog日誌瞭解

Mysql底層知識要懂哪些? 主要分爲兩個部分 binlog的相關概念 怎麼解析binlog 可以分上下兩個部分來敘述。上部分講述binlog的相關概念這部分的知識,我們不需要像運維懂的那麼深,我會列舉一些常見概念和常見配置,

原创 Java多線程使用總結

1、多線程有什麼用? 一個可能在很多人看來很扯淡的一個問題:我會用多線程就好了,還管它有什麼用?在我看來,這個回答更扯淡。所謂"知其然知其所以然","會用"只是"知其然","爲什麼用"纔是"知其所以然",只有達到"知其然知其所以然"的程度

原创 數據庫使用總結

1、觸發器的作用? 觸發器是一中特殊的存儲過程,主要是通過事件來觸發而被執行的。它可以強化約束,來維護數據的完整性和一致性,可以跟蹤數據庫內的操作從而不允許未經許可的更新和變化。可以聯級運算。如,某表上的觸發器上包含對另一個表的數據操作,

原创 數據庫性能優化之「數據讀寫分離」與「數據庫Sharding」方法

在互聯網項目中,當業務規模越來越大,數據也越來越多,隨之而來的就是數據庫壓力會越來越大。 我們可能會採取各種方式去優化,比如之前文章提到的緩存方案,SQL優化等等,除了這些方式以外,這裏再分享幾個針對數據庫優化的常規手段:「數據讀寫分離」與

原创 從客戶端的角度設計後端的接口

前言 兵馬未動,糧草先行。在一款APP產品的各個版本迭代中,兵馬的啓動指的是真正開始敲代碼的時候,糧草先行則是指前期的需求,交互,UI等評審準備階段,還有本文要說的接口的設計與評審。雖然很多時候一個api接口的業務,數據邏輯是後端提供

原创 Docker磁盤垃圾清理

1、整體分析 對於Docker來說,存在鏡像、容器、存儲卷和網絡這些對象。因此,也就會生產相對應的這些對象,這些對象會佔據磁盤空間。當這些對象不在被使用時,爲了不佔據額外的磁盤空間,就需要對這些對象進行清理,即進行垃圾清理。在docker