原创 多線程處理集合後如何保序

背景 在批量接口調用時,我們不會選擇循環遍歷的串行調用方式,因爲響應的時間會是所有調用時間之和,如查100個數據,每次查詢50毫秒,循環調用串行的總時間時100*50=5000毫秒。 一般會選擇使用批量查詢接口或多線程來解決上述問題。但多

原创 Java8 默認接口方法和lambda表達式

默認接口方法 Java 8使我們能夠通過使用 default 關鍵字向接口添加非抽象方法實現。 此功能也稱爲虛擬擴展方法。這個是比較大的一個變更,以往我們的認知是,接口裏只能有方法的定義不能有方法的實現,現在使用default關鍵字,可以

原创 把Tomcat8的源碼畫在腦袋裏(上)

如何學習源碼,對於我來說,拿到一個框架/開源項目,首先思考的是,爲什麼有人寫這個東西,它的出現是爲了解決什麼樣的現實問題。知道了框架/開源項目的前世今生,就更容易融入框架作者的思路里來。 Tomcat對於從事java開發/學習的同學來說實

原创 Centos7修改SSH遠程登陸端口

一般來說,用遠程工具如putty,SecureCRT等登陸阿里雲服務器或其他服務器,使用的端口默認是22。有時出於安全問題,防止22端口被掃描,會將遠程端口改爲其它自定義的端口(建議大於10000,一萬以下的端口可能會被系統使用)。 步驟

原创 MyBatis:Invalid bound statement (not found)

mybatis報錯:Invalid bound statement (not found)的原因很多,但是正如報錯提示一樣,找不到xml中的sql語句,報錯的情況分爲三種: 第一種:語法錯誤 Java DAO層接口 public void

原创 Java8函數式編程學習總結

什麼是函數式編程 函數式的概念 函數式編程不是Java8獨有的特性,它和麪向對象編程一樣,是一種編程思想。 函數式編程中的函數一詞,是數學意義中函數而非編程上定義的方法(method/function),在數學範疇,函數的定義如下: 給定

原创 Tomcat 啓動報錯This is very likely to create a memory leak. Stack trace of thread

前言:部分參考自網上,侵刪。 1、問題描述 啓動tomcat部署項目時,報This is very likely to create a memory leak. Stack trace of thread錯誤。 29-May-2018

原创 使用Calendar格式化時間達不到預期的問題

Java8中文文檔:http://www.matools.com/api/java8 java8 LocalDate參考:https://www.journaldev.com/2800/java-8-date-localdate-loca

原创 震驚!Spring Aop不起作用可能是這個原因導致的

Mark 原文:https://my.oschina.net/guangshan/blog/1807721

原创 Spring @Cacheable遇到空值處理、設置過期時間的問題分析

問題簡介:登錄模塊會將用戶信息緩存到redis中,沒有查到則存空。下次用到用戶信息時,先從緩存中取,緩存中沒有,再從數據庫取,以減輕數據庫的壓力。該功能基於Sprng @cacheable實現。當用戶用未註冊的賬號登錄時,按照邏輯存入空,

原创 寫的太好了!Spring AOP @Before @Around @After 等 advice 的執行順序

Mark 原文:https://blog.csdn.net/rainbow702/article/details/52185827

原创 Java覆寫equals方法爲什麼建議一起覆寫hashCode方法

我們都知道判斷對象是否相等時,使用==和覆寫equals方法的區別。默認情況下,equals也是通過==比較地址的方式實現的,所以當我們想根據對象的具體內容比較時(比如判斷兩個學生是否是同一個人時,可以通過比較學生的學號來確定:stude

原创 Java 字符串常量存放在堆內存還是JAVA方法區?

JDK1.7 及之後版本的 JVM 已經將運行時常量池從方法區中移了出來,在 Java 堆(Heap)中開闢了一塊區域存放運行時常量池。 JDK1.8開始,取消了Java方法區,取而代之的是位於直接內存的元空間(metaSpace)。 已

原创 MySql數據庫select的執行過程、連接語句、範式等

Mysql種執行select時,數據庫處理指令的流程: 1、FORM: 對FROM左邊的表和右邊的表計算笛卡爾積,產生虛表VT1。 2、ON: 對虛表VT1進行ON過濾,只有那些符合<join-condition>的行纔會被記錄在虛表

原创 Java字節數組byte[]與String互相轉換時遇到的錯誤及原理分析(轉)

說明:本文轉載於新浪博客,原文地址:http://blog.sina.com.cn/s/blog_673c81990100t1lc.html     在下面的描述中,將以"中文"兩個字爲例,經查表可以知道其GB2312編碼是"d6d0 c