原创 java的String.intern()方法小記

    在jdk1.7及以後(外加其他的非hotspot虛擬機),String的intern()方法不再是把堆上面的字符串複製到字符串常量池中,並返回常量池裏面此字符串的引用了。取而代之的是,inten()方法會在字符串常量池中記錄首次出

原创 Mongo2.6.10使用robo3t1.3版本不行的

把robo3t換成1.2

原创 Git解決每次push和pull都需要輸入用戶名密碼

gitBash裏輸入命令 git config --global credential.helper store 然後下次再pull或者push,還需要再輸入一次用戶名密碼。 但以後就不用輸入了。

原创 java實現根據前端的某個關鍵字進行線程控制

我的項目中,有個需求:           前端請求不能同時處理某一條數據。 怎麼實現呢? 我的方法是,把數據裏面的id當成鎖,實現線程控制。 可是,前端傳入的對象在我們的虛擬機裏都是新的對象,就算id值相同,也是兩個對象啊,這樣的鎖,鎖

原创 mongoTemplate或條件查詢

不能這麼寫: query.addCriteria(Criteria.where("aaa").is("aaaa").orOperator(Criteria.where("bbb").is("bbb"))); 只能這麼寫 Criteri

原创 Lambda表達式寫的List foreach循環是單線程處理還是多線程處理?

自從有了jdk8,我的foreach循環從原來的 for(String s:list){ System.out.println(s); } 瀟灑的變成了 list.stream.foreach((s) -> { System.out.pr

原创 java服務器解密微信小程序

網上的大部分代碼都很坑啊! 真不知道他們怎麼解密出來的。 不是BadPading ....Exception就是解密出來的數據是空的或者是一大串看不懂的玩意兒。 推薦一個代碼,親測可用,沒親測天打雷劈。 感謝!原文鏈接:https://y

原创 mongotemplate查詢的value有int,有String,怎麼辦?

有時候,前端和手機端給你的數據看起來一樣,可是有時候某些字段的value卻類型不相同。比如,id有傳int,有傳String。 我們使用mongotemplate根據這個字段查詢時候,總不能每次都寫兩個查詢條件,一個(“key”).is(

原创 mongotemplate查詢返回指定字段

BasicQuery查詢語句可以指定返回字段            Query query=new   BasicQuery(DBObject queryObject, DBObject fieldsObject)            

原创 mongotemplate判斷文檔中的數組是否含有特定的值

應用場景:我們數據庫的的文檔裏面含有數組,而我的查詢條件有根據數組裏面某個key的值查詢怎麼辦? 比如我有三個json文檔: {“name”:"MAZHIGANG", "array":[{"key1":"val1",          

原创 MongoTemplate使用$set根據文檔自動更新值,不刪除文檔裏面沒有的key

mongotemplate.updateFirst(query,Update.fromDocument(document,"$set"),"yourcollectionName"); 這種寫法會使數據庫的查詢到的文檔更新爲document

原创 付款碼的一碼多用思路

        首先感謝強大的知乎,參考文章:         https://www.zhihu.com/question/41709402         使用過友寶或者某些自動售貨的無人售貨機的同鞋們知道,友寶的二維碼是一個二維碼支

原创 用阻塞隊列ArrayBlockingQueue實現簡單生產者消費者案例

ArrayBlockingQueue 是一個用數組實現的有界阻塞隊列,其內部按先進先出的原則對元素進行排序,其中put方法和take方法爲添加和刪除的阻塞方法。 import java.util.concurrent.ArrayBloc

原创 java線程池7個構造器參數

java.uitl.concurrent.ThreadPoolExecutor類是線程池中核心的一個類, 可以看到,最後一個構造器的參數是最齊全的,前三個都是初始化了某些參數。 所有參數說明: corePollSize:核心線程數。在創

原创 java獲取凌晨0點整的時間戳

java獲取零點整的時間戳, long nowTime =System.currentTimeMillis(); long todayStartTime = nowTime - (nowTime + TimeZone.getDefaul