原创 java內存區域問題詳解

1 概述 對於 Java 程序員來說,在虛擬機自動內存管理機制下,不再需要像C/C++程序開發程序員這樣爲內一個 new 操作去寫對應的 delete/free 操作,不容易出現內存泄漏和內存溢出問題。正是因爲 Java 程序員把內存控制

原创 HashMap 與HashTable的區別

HashMap 與HashTable的區別 HashMap與Hashtable的區別是面試中經常遇到的一個問題。這個問題看似簡單,但如果深究進去,也能瞭解到不少知識。本文對兩者從來源,特性,算法等多個方面進行對比總結。力爭多角度,全方位的

原创 Open Directory Listing in Tomcat

簡而言之,Directory Listing就是在tomcat的安裝目錄中的webapps文件夾中不放置任何web程序文件,例如index.html,web.xml等,那麼採用URL去訪問這個文件夾的時候,就會將文件夾中的所有內容全部列出

原创 JAVA單例模式優化

說說 餓漢式與懶漢式   餓漢式:是線程安全的;類加載的時候,就會生成實例對象,未支持 延遲加載,在還未用到之前,一直佔用內存。 懶漢式:支持延遲加載;在多線程條件下,存在線程安全問題。加鎖影響性能   用內部類的形式實現單例,既可以解決

原创 redis 的雪崩、穿透和擊穿

緩存雪崩 對於系統 A,假設每天高峯期每秒 5000 個請求,本來緩存在高峯期可以扛住每秒 4000 個請求,但是緩存機器意外發生了全盤宕機。緩存掛了,此時 1 秒 5000 個請求全部落數據庫,數據庫必然扛不住,它會報一下警,然後就掛了

原创 MySQL 讀寫分離 MySQL 主從複製原理 MySQL 主從同步的延時問題

如何實現 MySQL 的讀寫分離? 其實很簡單,就是基於主從複製架構,簡單來說,就搞一個主庫,掛多個從庫,然後我們就單單只是寫主庫,然後主庫會自動把數據給同步到從庫上去。 MySQL 主從複製原理的是啥? 主庫將變更寫入 binlog 日

原创 Java併發-AQS及各種Lock鎖的原理

 AQS是AbstractQueuedSynchronizer的簡稱。AQS提供了一種實現阻塞鎖和一系列依賴FIFO等待隊列的同步器的框架,如下圖所示。AQS爲一系列同步器依賴於一個單獨的原子變量(state)的同步器提供了一個非常有用的

原创 SQL優化

1. 儘量用EXISTS代替IN2. 使用慢日誌,explain記錄那些查詢很慢的SQL語句。3. JOIN操作中,使用小的結果驅動大的結果。4. 分頁在基數較大時,儘量使用between而不是limit5. 儘量不要使用rand獲取隨機

原创 java8 集合流式操作

一. 基本概念 二. 串行流和並行流 三. 中間操作 和 最終操作   一. 基本概念 1.1 爲什麼加入 集合的流式操作              JDK8 的Stream 是一個受到 函數式編程 和 多核時代影響而產生的

原创 java反射的應用

public class myCheckBoxTableCell<S, T> extends CheckBoxTableCell<S, T> {     @Override     public void

原创 java8函數式接口和Lambda表達式應用在javaFX中tableView自定義點擊事件

java8的函數式接口大家應該不陌生了, 函數式接口,@FunctionalInterface,簡稱FI,簡單的說,FI就是指僅含有一個抽象方法的接口,以@Functionalnterface標註 比如: Lambda表達式使用過jav

原创 javaFX table表格可編輯失去焦點提交

代碼如下 public class EditingCell<T> extends TableCell<T, String> {     private TextField textField;     public EditingCell

原创 解決eclipse工程打包中文亂碼解決辦法 續集

點擊打開鏈接這是之前我的一篇博客 有寫到解決亂碼的辦法 最新辦法如下 最新辦法是在 並且在product工程的launching標籤頁中找到VM Arguments  加一行代碼 -Dfile.encoding=utf-8

原创 解決Eclipse RCP中Product工程打包時圖片不顯示以及中文亂碼問題

相信很多人在開發Eclipse RCP項目中 使用Product工程打包時遇到過圖片不顯示以及中文亂碼問題 具體解決辦法如下:          1.圖片不顯示                  因爲打包出來的plugin 都是jar

原创 java反射運用在javaFX客戶端中

javaFX應用開發時 必然會涉及到part頁面的讀取 一個part相當於一個HTML的頁面,相對於Swing SWT javaFX開發的CS端的程序不需要使用代碼去寫頁面,而是可以通過工具SceneBuilder拖拽生成類似HTML代碼