原创 hibernate executeUpdate和executeNativeUpdate

executeUpdate用來執行HQL的更新或者刪除語句。 executeNativeUpdate用來執行SQL的更新或者刪除語句 session.createQuery(hql) session.createSqlQuery

原创 併發阻塞隊列LinkedBlockingQueue

1. 繼承關係 public class LinkedBlockingQueue extends AbstractQueue implements BlockingQueue, java.io.Serializable 實現了Bl

原创 併發阻塞隊列ArrayBlockingQueue

ArrayBlockingQueue 一個由數組支持的有界阻塞隊列。此隊列按 FIFO(先進先出)原則對元素進行排序。隊列的頭部 是在隊列中存在時間最長的元素。隊列的尾部 是在隊列中存在時間最短的元素。新元素插入到隊列的尾部,隊列

原创 java數據類型

前言 當我們開始學習java的時候,除了一些相關術語,第一堂與java編程相關的就應該是學習java的數據類型了吧。可能當別人問起java有哪些類型時,你可能琅琅上口的背出:byte,short,char,int,long,flo

原创 hibernate二級緩存(三) 自定義實現一個簡單的hibernate二級緩存

hibernate二級緩存(三) 自定義實現一個簡單的hibernate二級緩存 前面我們已經提及過hibernate內部爲二級緩存的擴展做了很多的實現。我們只需要實現RegionFactoryTemplate和DomainDataS

原创 hibernate二級緩存(二)二級緩存實現原理簡單剖析

hibernate二級緩存(二)二級緩存實現原理簡單剖析 在前面我們將過hibernate二級緩存類似於一個插件,將緩存的具體實現分離,緩存的具體實現是通過hibernate.cache.region.factory_class參數配

原创 hibernate二級緩存(一)一級緩存與二級緩存

hibernate二級緩存(一)一級緩存與二級緩存 1.hibernate一級緩存 hibernate的一級緩存是session級別的緩存,一級緩存hibernate默認啓用且不能被卸載,一個事務內有效。 特點: 使用一級緩存的目

原创 spring boot整合Redis

spring boot整合Redis spring boot與各個中間件的組合在其官方文檔上面都有,,這裏介紹下兩種連接Redis的方式:Jedis、Lettuce。 本次spring boot版本是基於目前的最新版本:2.1.1.R

原创 mysql執行大sql時報[Err] 2013 - Lost connection to MySQL server during query

當前執行線程被強制中斷 文件插入行數過大 如果是第2個原因再執行前加上SET GLOBAL max_allowed_packet=520000000;

原创 判斷一個數是不是2的指數冪

求一個數是不是2的指數冪 2^0=1,2^1=2,2^2=4,2^3=8 1的二進制爲1 2的二進制爲10 4的二進制爲100 8的二進制爲1000 發現只有最高位爲1其餘位爲0,如果將其減一的話那麼最高位爲0其餘位則爲1,兩者相與

原创 java實現流量控制

java實現流量控制 有些時候我們的服務負載有限,這時候就需要限制對其的併發訪問,常見的應用場景是開放api。下面介紹兩種流量控制的方式。 1.信號量semaphore 一個計數信號量。從概念上講,信號量維護了一個許可集。如有必要,在

原创 一個可靠的storm wordcount實現

可靠的wordcount 1.實現storm的可靠性api 要實現可靠的api大致需要實現以下步驟: 實現spout的ack和fail方法 在spout發射的時候將發射的tuple與一個唯一的messageId進行綁定 在bolt發

原创 storm基礎概念

storm基礎概念storm基礎概念1. 拓撲(Topologies)2. 流(Streams)3. 數據源(Spouts)4. 數據流處理組件(Bolts)5.數據流分組(Stream groupings)6.可靠性7.任務(Tas

原创 從wordcount瞭解storm的所有基礎用法

不一樣的wordcount workcount例子如同初學Java時的HelloWord一樣,下面通過一個workcount瞭解storm的所有基礎用法。 整個工程的結構圖如下: 由5部分組成,其中topology,spout,bo

原创 storm的並行度

storm的並行度 是什麼組成了一個運行中的topology:工作進程(worker processes),執行器(executors)和任務(tasks) 在一個 Storm 集羣中,Storm 主要通過以下三個部件來運行拓撲: 工