原创 這次徹底讀透 Redis

0. Redis 基礎 如果對 Redis 還不瞭解的同學可以先看一下這篇 Redis 基礎文章 ,這裏面介紹了 Redis 是什麼,以及怎麼用 1. Redis 管道 我們通常使用 Redis 的方式是,發送命令,命令排隊,Redis

原创 一條 SQL 語句是如何執行的

1. select 語句執行過程 一條 select 語句的執行過程如上圖所示 1、建立連接 連接器會校驗你輸入的用戶名和密碼是否正確,如果錯誤會返回提示,如果正確,連接器會查詢當前用戶對於的權限。連接器的作用就是校驗用戶權限 2、查詢緩

原创 博客園圖片無法顯示

今天粉絲反饋博客圖片無法顯示,看了一下,圖牀是可以正常訪問的,不知道什麼原因,後來看了博客園後臺編輯博文處有一個提取圖片的功能,非常好用,可以將圖牀上的圖片全部提取到博客園站內,這樣就不會出現圖片訪問的問題了 在編輯器右下方,有個提取圖片

原创 一文讀懂 MySQL 鎖

1 MySQL 鎖簡介 1.1 什麼是鎖 鎖是計算機用以協調多個進程間併發訪問同一共享資源的一種機制。MySQL中爲了保證數據訪問的一致性與有效性等功能,實現了鎖機制,MySQL中的鎖是在服務器層或者存儲引擎層實現的。 1.2 鎖用來解決什

原创 一文讀懂 MySQL 索引

1 索引簡介 1.1 什麼是 MySQL 的索引 官方定義:索引是幫助 MySQL 高效獲取數據的數據結構 從上面定義中我們可以分析出索引本質是一個數據結構,他的作用是幫助我們高效獲取數據,在正式介紹索引前,我們先來了解一下基本的數據結構

原创 Comparison method violates its general contract! 問題

引言 今天下午正在摸魚,這時候突然客戶在羣裏反饋,說今天數據沒有了,催我趕緊去看,於是我連上客戶服務器,打開今天的項目日誌,看到了下面的錯誤 Comparison method violates its general contract

原创 Spring IOC 爲什麼能降低耦合

有同學在學習 Spring 框架中可能會問這樣的問題,爲什麼通過依賴注入就可以降低代碼間的耦合呢?我通過 new 生產對象不也可以嗎,不就是一行代碼的不同,一個是 @Resource 注入,一個是 new 創建,怎麼就降低耦合了? 今天

原创 Switch對String的支持

Java 7中,switch的參數可以是String類型了,這對我們來說是一個很方便的改進。到目前爲止switch支持這樣幾種數據類型:byte short int char String 。但是,作爲一個程序員我們不僅要知道他有多麼好用,

原创 Java序列化,看這篇就夠了

1.什麼是序列化 Java序列化是指把Java對象轉換爲字節序列的過程,而Java反序列化是指把字節序列恢復爲Java對象的過程: 序列化:對象序列化的最主要的用處就是在傳遞和保存對象的時候,保證對象的完整性和可傳遞性。序列化是把對象轉換

原创 Mysql修改、添加、刪除字段

1.添加字段 1.在末尾添加字段 (1)語法 ALTER TABLE <表名> ADD <字段名> <數據類型> [約束條件]; 語法格式的說明: <表名> 爲數據表的名字; <字段名> 爲所要添加的字段的名字; <數據類型> 爲所要添

原创 深入理解Enum(枚舉類)

爲什麼要引入枚舉類 一個小案例 你寫了一個小程序,不過好久不用了,突然有一天,你想使用一下它。程序要想正確運行,需要將今天星期幾存到數據庫裏。這個時候,你開始犯難了。 當初的你還很年輕,不懂程序界的險惡,設計這個程序的時候,傻不拉幾把這個字

原创 定時任務應該這麼玩

1.場景 在電商系統中會經常遇到這樣一種場景,就是商品的定時上下架功能,總不能每次都手動執行吧,這個時候我們首先想到的就是利用定時任務來實現這個功能。 目前實現定時任務主要有以下幾種方式: JDK自帶 :JDK自帶的Timer以及JDK

原创 此流非彼流——Stream詳解

Stream是什麼? Java從8開始,不但引入了Lambda表達式,還引入了一個全新的流式API:Stream API。它位於java.util.stream包中。 Stream 使用一種類似用 SQL 語句從數據庫查詢數據的直觀方式來提

原创 Lambda表達式你會用嗎?

函數式編程 在正式學習Lambda之前,我們先來了解一下什麼是函數式編程 我們先看看什麼是函數。函數是一種最基本的任務,一個大型程序就是一個頂層函數調用若干底層函數,這些被調用的函數又可以調用其他函數,即大任務被一層層拆解並執行。所以函數就

原创 Linux文本處理詳細教程

1. 文本處理 本節將介紹Linux下使用Shell處理文本時最常用的工具: find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk; 提供的例子和參數都是常用的; 我對shell腳本使用的原則是