原创 Schedule原理+demo

schedule的原理:       使用(線程安全)延遲隊列,按照任務的待運行時間從小到大排序,處理schedule的線程不停的從延遲隊列中取任務,只有task任務的待執行時間爲當前時間時,方可取出task執行,其他場景線程進入等待狀態

原创 MySQL版本對varchar的定義和限制條件

目錄 1、MySQL版本對varchar的定義 2、存儲限制 3、編碼限制 4、長度限制 1、MySQL版本對varchar的定義    4.0版本以下,varchar(50),指的是50字節,如果存放UTF8漢字時,只能存16個(每個中

原创 Java8專題一《爲什麼要關心Java8》

本章內容 1、Java怎麼又變了? 2、我們爲什麼要繼續學習Java8? 3、Java8到底有哪些改變? 在開講Java8專題前,我先帶大家非常簡略的瞭解一下關於2019年編程語言排行榜的情況,該內容來自Tiobe發佈2019年3月編

原创 Java8專題三(上)《Lambda表達式》

目錄 1、Lambda是什麼? 2、Lambda表達式組成部分是什麼? 3、爲什麼要用以及在哪裏可以使用Lambda?  4、 函數式接口 5、 方法引用 1、Lambda是什麼? 可以把Lambda表達式理解爲簡潔的表示可傳遞的匿名函數

原创 Java8專題一《爲什麼要學習Java8?》

背景: leader要求每人選一個專題給大家做分享,一位同學由於業務上要使用okhttp,所以他選擇分享的課題就是okHttp。 思考了一週後的我就決定選擇Java8作爲分享專題。 目錄 爲什麼選擇Java8作爲此次的分享專題呢? J

原创 使用HuTool工具二次封裝下載Excel模版、上傳excel數據、下載excel數據

背景: 最近簡略的瞭解了一個關於HuTool的工具包,自己又對其進行封裝了一個關於操作Excel的工具類,準備分享出來。 好處:利用java反射機制,一定程度上減少代碼的冗餘量。 代碼講解: java操作Excel數據是爲了將Exce

原创 Java8專題三(下)《Lambda表達式-複合Lambda表達式》

目錄 1、複合Lambda表達式的有用方法 1)比較器複合 2)謂詞複合 3)函數複合 2、小結 1、複合Lambda表達式的有用方法 Java8的好幾個函數式接口都有爲方便而設計的方法。比如用於傳遞Lambda表達式Comparator

原创 牢記base64加解密

 1、簡單到就一句話的功夫 String str = ""; String decode = new String(Base64Utils.decode(str.getBytes(Charset.forName("utf-

原创 Java8專題六《用流收集數據》

本章節一共有兩個部門 1、講解大概14個Collectors類的靜態工廠方法的用法 2、簡單的講解收集器接口 1. 收集器簡介 collect() 接收一個類型爲 Collector 的參數,這個參數決定了如何把流中的元素聚合到其它

原创 Java8專題七《函數式編程小結》

背景: 在實現和維護一個系統中,我們首先會去看這個程序是否具有良好的結構(耦合度和內聚性),因爲良好的結構便於我們理解。 除此以外,我們最關心的就是在日常工作中對代碼進行維護時的調試,因爲代碼遭遇一些無法預期的值就有可能發生崩潰。 我們

原创 Java8專題總結

1. 我的收穫 在工作中,能夠更熟練使用Stream流 瞭解了並行處理的原理 增加我對JDK8學習瞭解的自信   2. 和以前的不同 認識的多了。之前只是知道個別幾個常用的方法,比如filter、map、foreach和collect,知

原创 Java根據消息模版格式化填充消息內容

在公司開發某項目有消息通知這一模塊,抖了一個小機靈,提供兩種根據消息模版格式化填充消息內容的方法😁 希望發出來,能夠給需要的同學提供一個好的解決思路 方法一: 模擬yml文件,根據@XXX@填充參數的方式: Map<String, S

原创 Java8專題五(下)《使用流》

本章內容 1、篩選、切片 2、映射 3、查找、匹配 4、歸約 5、數值流 6、構建流 7、小結 5.5 數值流 我們在前面看到了可以使用reduce方法計算流中的元素的總和。 例如: int calories = menu.stre

原创 Java8專題五(中)《使用流》

本章內容 1、篩選、切片 2、映射 3、查找、匹配 4、歸約 3. 查找和匹配 另一個常見的數據處理套路是看看數據集中的某些元素是否匹配一個給定的屬性。Stream API通過allMatch、anyMatch、noneMatch、f

原创 Java8專題五(上)《使用流》

本章內容 1、篩選、切片 2、映射 3、查找、匹配 4、歸約 1. 篩選和切片 我們來看看如何選擇流中的元素:用謂詞篩選,篩選出各個不相同的元素,忽略流中的頭幾個元素,或將流截短至指定長度。 1.1 用謂詞篩選 Stream接口支持f