原创 MySQL使用注意事項記錄(不定期更新)

前言 這篇文章會記錄一些關於MySQL使用上容易出錯的地方。 MySQL 唯一性約束允許重複的NULL值 問題複述: CREATE TABLE `my_table` ( `A` char(20) , `B` char(20)

原创 溫故 Java 8 中引入的 Optional 類

前言 爲什麼要有Optional類?(它試圖去解決什麼問題呢?) 答:Optional類試圖去解決Java系統中大量出現的NullPointerException問題和繁瑣的null檢查。 使用 Optional常用方法: 創建 O

原创 MySQL查詢中LIMIT的大offset會導致性能低下

前言 在業務系統中難免少不了分頁的需求。想到分頁的時候,大家肯定會想到使用SQL中的LIMIT來實現。但是,如果不正確的使用LIMIT會導致性能問題(SQL執行得很慢、有可能會拖垮服務器),也會被領導批的;所以,我們來看看如何正確地使

原创 溫故 Java 8 日期 API

前言 爲什麼我們需要一個新的日期和時間庫? Java開發中一個長期存在的窘境是對普通開發者的date和time用例支持不足。 例如,現存的類(例如java.util.Date和SimpleDateFormatter)不是線程安全的,

原创 MySQL 5.7 複製原理簡介

MySQL 複製介紹 通過複製,可以將來自一個MySQL數據庫服務器(主服務器)的數據複製到一個或多個MySQL數據庫服務器(從服務器)。 默認情況下複製是異步的; 從服務器不需要一直連接以接收來自主站的更新。 根據配置,可以複製數據庫

原创 ArchLinux調節屏幕亮度

作者:crane-yuan 日期:2017-04-01 調整屏幕亮度命令 > echo 1000 > /sys/class/backlight/intel_backlight/brightness # 屏幕亮度調到1000 > ca

原创 zip壓縮包解壓亂碼問題

作者:crane-yuan 日期:2017-05-02 問題 由於zip格式中並沒有指定編碼格式,Windows下生成的zip文件中的編碼是GBK/GB2312等,因此,導致這些zip文件在Linux下解壓時出現亂碼問題,因爲Lin

原创 使用Spring Boot的AOP處理自定義註解

前言 上一篇文章Java 註解介紹講解了下Java註解的基本使用方式,並且通過自定義註解實現了一個簡單的測試工具;本篇文章將介紹如何使用Spring Boot的AOP來簡化處理自定義註解,並將通過實現一個簡單的方法執行時間統計工具爲樣例來

原创 Spring Data JPA Vs Hibernate JPA Vs JPA

前言 從文章的標題,就可以清晰地瞭解到,本文是來辨析三個容易將新手弄糊塗的技術名詞。如果,你一眼看過去就知道這三個名詞的區別及關係,那麼,這篇文章你可以不用繼續讀下去了;除非,你是想要看看我有什麼解釋的不對,來糾錯的(來找茬,哈哈),也歡

原创 Bash循環處理帶有空格的文件名

作者:crane-yuan 日期:2017-05-02 解決方法 使用IFS(the Internal Field Separator),Shell依靠它去決定如何進行單詞分隔。 #!/bin/bash SAVEIFS=$IFS I

原创 sudo cd爲什麼不能夠執行

作者:crane-yuan 日期:2017-04-21 問題描述 我想要cd到/etc/docker,但是它給我一個權限不夠的錯誤,然後,我想到使用sudo cd /etc/docker時,它告訴我sudo: cd:找不到命令。

原创 Git 常用命令小結

前言 閱讀本篇文章需要讀者瞭解 Git 的基本用法,如果你對 Git 完全不瞭解,請先行移步瞭解 Git 基礎。 下面是幾份本人覺得不錯的 Git 入門教程,新手可以參考。 Git權威指南 | 國內一位大牛寫的介紹 Git 用法的開源

原创 《Effective Java 第三版》新條目介紹

前言 從去年的3月份起我就在開始讀《Effective Java 第二版》,當然,我讀的是中文版的;可能是我理解能力還不行,對於書中的內容總是感覺理解困難;就拿第一章的內容「創建和銷燬對象」來說吧,這是我讀的次數最多的一章,想必原因大家也

原创 tmux進階之tmuxinator

tmux進階之tmuxinator 作者:crane-yuan 日期:2017-03-03 前言 tmuxinator是tmux的配置管理工具,解決了tmux服務器關機後session丟失問題。tmuxinator可以根據配置文件

原创 MySql鏡像安裝

作者:crane-yuan 日期:2017-04-20 安裝MySql鏡像 > docker search mysql #查找MySql鏡像版本 > docker pull mysql:tag #安裝指定版本的mysql鏡像,tag