原创 logback xml方式配置

一、logback的介紹   Logback是由log4j創始人設計的另一個開源日誌組件,官方網站: http://logback.qos.ch。它當前分爲下面下個模塊:  logback-core:其它兩個模塊的基礎模塊  logb

原创 併發+事務處理不當引起的部分數據被提前消費

今天線上出現了一個詭異bug,部分數據被提前消費。由於業務流程保密問題,下面用例子詳解 場景:現在有個需求,學校需要統計每個班,每天的考勤情況 我們用兩個定時任務來解決,定時任務A插入考勤數據,定時任務B統計考勤數據 定時任務之間可能存在

原创 java 內省機制

內省(IntroSpector)是Java 語言對 Bean 類屬性、事件的一種缺省處理方法。例如類 A 中有屬性 name, 那我們可以通過 getName,setName 來得到其值或者設置新的值。通過 getName/setName

原创 date類型字段比較

Date類型可以直接比較 mybatis: <if test="today!=null and today !=''">    <![CDATA[ AND planed_complete_time< #{today,jdbcType=DA

原创 java 內省機制與反射機制 的區別

內省,是針對JavaBean對象的。只有符合JavaBean規則的類的成員纔可以採用內省API進行操作 反射,就是把一個普通類中的每個組成部分都可以單獨取出來,對其每一個成員的調用或者修改不必依賴於new對象。 一個類的所有成員都可以進行

原创 全局鎖和悲觀鎖的異常處理

悲觀鎖一般用在事務中“獨佔的”持有一個資源,這樣是爲了在併發操作中保護數據一致性。悲觀鎖的使用非常常見,但是我們代碼中對悲觀鎖的認識上存在不足,導致對異常的處理其實是不到位的,比如以下代碼:     protected void loc

原创 樂觀鎖

樂觀鎖介紹: 樂觀鎖( Optimistic Locking ) 相對悲觀鎖而言,樂觀鎖假設認爲數據一般情況下不會造成衝突,所以在數據進行提交更新的時候,纔會正式對數據的衝突與否進行檢測,如果發現衝突了,則讓返回用戶錯誤的信息,讓用戶決定

原创 System.out與System.err的區別

近日,在看logback配置文件時,突然發現有個配置可以是System.out或者System.err,引起了本屌的好奇,這是啥玩意?這不是以前的控制檯標準和error輸出嗎,本屌好奇的查看了下api,發現: out The "stand

原创 Spring下配置log4j

log4j最重要的幾點概念: 1.日誌級別 等級可分爲OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL,如果配置OFF則不打出任何信息,如果配置爲INFO這樣只顯示INFO,WARN, ERROR的log信息,而DE

原创 小鳥開博了,從今與君共勉

  小鳥開發兩年已久,大大小小技術接觸不少,還未認認真真整理歸納過,電腦word,xmind一堆,很亂,小鳥從今天起,開始陸陸續續上傳曾經接觸和工作遇到的技術總結。最後,送給it路上的朋友一首詩共勉。 《勿忘心安》 勿要把酒倚寒窗

原创 善用Websocket替代前端輪詢請求接口

一、由來 WebSocket 是 HTML5 開始提供的一種在單個 TCP 連接上進行全雙工通訊的協議。 實際場景:實時獲取後臺數據,首先想到的一定是ajax每隔幾秒不斷輪詢調用後臺接口,這種方式可以實現,簡單粗暴,但是一次次的請求會浪費

原创 併發優化

本篇主要講解的是前陣子的一個壓測問題,那麼就直接開門見山。   可能有的朋友不併不知道forceTransactionTemplate這個是幹嘛的,首先這裏先普及一下,在Java中,我們一般開啓事務就有三種方式: XML中根據servi

原创 天才算法-睡眠排序

它的基本思想是:主要是根據CPU的調度算法實現的,對一組數據進行排序,不能存在負數值,這個數是多大,那麼就在線程裏睡眠它的10倍再加10,不是睡眠和它的數值一樣大的原因是,當數值太小時,誤差太大,睡眠的時間不比輸出的時間少,那麼就會存在不

原创 Gson轉換json對象字段爲null時轉換問題

使用new GsonBuilder().serializeNulls().create()這個方法創建gson對象,就可以將爲null的字段也能轉換出json Gson gs = new GsonBuilder().serializeN

原创 mysql int(11)問題

mysql 中int(1)和tinyint(1)中的1只是指定顯示長度,並不表示存儲長度. tinyint可以存儲1字節, 即unsigned 0~255(signed -127~127)。顯示大小不受此限制 (所有整數類型相同),即使設