原创 Java 8 中的 Streams API 詳解

爲什麼需要 StreamStream 作爲 Java 8 的一大亮點,它與 java.io 包裏的 InputStream 和 OutputStream 是完全不同的概念。它也不同於 StAX 對 XML 解析的 Stream,也不是 A

原创 泛型:泛型的定義(類、接口、對象)、使用、繼承 1. 設計泛型的初衷:

1. 設計泛型的初衷:    1) 主要是爲了解決Java容器無法記憶元素類型的問題:         i. 由於Java設計之初並不知道會往容器中存放什麼類型的元素,因此元素類型都設定爲Object,這樣就什麼東西都能放了!     

原创 Java8Lambda

lambda寫的好可以極大的減少代碼冗餘,同時可讀性也好過冗長的內部類,匿名類。先列舉兩個常見的簡化(簡單的代碼同樣好理解)創建線程排序lambda表達式配合Java8新特性Stream API可以將業務功能通過函數式編程簡潔的實現。(爲

原创 Java8Optional

Optional是Java8提供的爲了解決null安全問題的一個API。善用Optional可以使我們代碼中很多繁瑣、醜陋的設計變得十分優雅。這篇文章是建立在你對Optional的用法有一定了解的基礎上的,如果你還不太瞭解Optional

原创 MYSQL中group_concat

在mysql中,有個函數叫“group_concat”,平常使用可能發現不了問題,在處理大數據的時候,會發現內容被截取了, 其實MYSQL內部對這個是有設置的,默認不設置的長度是1024,如果我們需要更大,就需要手工去修改配置文件。 詳細

原创 mysql支持emoji表情

找到/etc/mysql路徑下的my.cnf文件,通過vi命令打開該文件並進行編輯,需添加如下所示配置: [client] default-character-set=utf8mb4   [mysqld] character-set-cl

原创 sql查詢優化

1)數據庫設計方面: a. 對查詢進行優化,應儘量避免全表掃描,首先應考慮在 where 及 order by 涉及的列上建立索引。 b. 應儘量避免在 where 子句中對字段進行 null 值判斷,否則將導致引擎放棄使用索引而進行全表

原创 線程相關的基礎知識

什麼是線程?線程和進程的關係。線程創建與運行。創建一個線程有那幾種方式?有何區別?線程通知與等待,多線程同步的基礎設施。線程的虛假喚醒,以及如何避免。等待線程執行終止的 join 方法。想讓主線程在子線程執行完畢後在做一點事情?讓線程睡眠

原创 MySQL中exists與in的使用

exists對外表用loop逐條查詢,每次查詢都會查看exists的條件語句,當 exists裏的條件語句能夠返回記錄行時(無論記錄行是的多少,只要能返回),條件就爲真,返回當前loop到的這條記錄,反之如果exists裏的條 件語句不能

原创 【開發利器】中國國內可用API合集

中國國內可用API合集目錄筆記出行詞典電商地圖電影即時通訊開發者網站快遞查詢旅遊社交視頻天氣團隊協作圖片與圖像處理外賣消息推送音樂雲語音識別綜合筆記OneNote - OneNote支持獲取,複製,創建,更新,導入與導出筆記,支持爲筆記添

原创 MySQL查詢優化之道

01查詢優化器模塊查詢優化器的任務是發現執行 SQL 查詢的最佳方案。大多數查詢優化器,要麼基於規則、要麼基於成本。大多數查詢優化器,包含 MySQL 的查詢優化器,總或多或少地在所有可能的查詢評估方案中搜索最佳方案。MySQL 中 My

原创 mapper

Mapper映射文件是一個xml格式文件,必須遵循相應的dtd文件規範,如ibatis-3-mapper.dtd。我們先大體上看看支持哪些配置?如下所示,從Eclipse裏截了個屏:從上圖可以看出,映射文件是以<mapper>作爲根節點,

原创 Java8 Stream語法詳解

1. Stream初體驗我們先來看看Java裏面是怎麼定義Stream的:A sequence of elements supporting sequential and parallel aggregate operations.我們來

原创 mysql更新記錄時設置自動更新時間戳

insert時更新`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,update時更新`modify_time` datetime NOT NULL DEFAULT CUR

原创 inux中用tomcat部署項目,查看日誌相關命令

進入logs:1.------查看tomcat是否啓動            命令:netstat -anp|grep 9090            9090未tomcat的端口號,使用上面命令可查看端口號爲9090的tomcat是否在