原创 問題記錄--25端口郵件發送失敗

最近寫了一個監控日誌程序的小功能,其中的一個步驟就是在檢查到日誌有ERROR級別的錯誤信息時,截取錯誤信息併發送到指定的郵箱。 最初配置 mail:     host: smtp.exmail.qq.com     username:

原创 刺激驚豔的Map轉Object

項目中遇到過這樣一個問題,sql查詢出來的結果是一個Map<String,Object>,需要將map中對應的值放置到對應的實體類中,map中的key與實體類中的屬性名一樣。在屬性值很少的時候,我們可以簡單的取出值在set進實體類中,但是

原创 Map轉實體類

項目中遇到過這樣一個問題,sql查詢出來的結果是一個Map<String,Object>,需要將map中對應的值放置到對應的實體類中,map中的key與實體類中的屬性名一樣。在屬性值很少的時候,我們可以簡單的取出值在set進實體類中,但是

原创 Java coder 人人都應該擁有的書單

1.Spring5開發大全 2.netty進階之路 3.SpringBoot企業級應用開發實戰 4.Java併發編程的藝術 5.深入理解Java虛擬機 6.高性能mysql

原创 Spring AOP 實際使用案例

1.在方法上加註解   2.在PointCut中捕獲註解,執行相關的方法 3.在Around中捕獲上一步執行的相關方法,利用 ProceedingJoinPoint joinPoint 獲取第一步加註解方法的執行結果 4.統一處理獲

原创 三個字段排序

這樣的一個需求,資產數量升序排列,資產數量相同的按通過率降序排序,通過率也相同的按名稱的首字母排序。 如果在數據庫中其實很好操作,因爲特殊原因,目前需要在業務邏輯中進行處理。這裏也順便記錄一下連續比較的用法。 待排序的數據集是List<M

原创 Java Map中數據按照key進行排序

static String mapSortedByKey(Map<String, String> param) { StringBuilder stringBuilder = new StringBuilder();

原创 Java MD5加密

public class MD5Util { public static String getMD5(String str) { MessageDigest md = null; try {

原创 IDEA 單步調試多線程

不得不說,IDEA是真的強大。 告別打日誌的方法吧,直接使用IDEA進行多線程的調試。 多線程單步調試步驟: 1.首先在你需要單步調試的地方打上斷點,然後鼠標右鍵已經打好的斷點,可以跳出斷點的設置。 2.斷點默認Suspend的選項是A

原创 spring中的事務

出現問題的背景: γ項目中在風險部分會有系統消息和郵件通知用戶,這裏涉及到事務,具體的流程爲update數據之後,又要利用多線程根據assetsId獲取當前資產的風險等級,並將相應的消息和郵件發送給用戶。 產生原因: 外層大方法使用事務,

原创 Linux之vim操作

vim操作的重點是光標的移動,模式切換,刪除,查找,替換,複製,粘貼,撤銷命令的使用。 vim中存在的三種模式:命令模式,編輯模式(輸入模式),末行模式(尾行模式) 命令模式:在該模式下不能對文件直接進行編輯,可以輸入快捷鍵進行一些操作(

原创 Linux基本指令

 基本指令 #顯示當前目錄 pwd #創建新目錄 make directory mkdir #創建多層級目錄,假如前兩個xxxx目錄不存在 mkdir -p xxxx/xxxx/xxxx #創建新文件 #touch test.te

原创 阿里雲ECS-centos7建站環境搭建

又快到一年的雙十一了,阿里雲也搞起了拼團活動,買了一臺最低配的雲服務器,自己玩。 連接遠程服務器直接使用了xshell,不詳細描述。 最基礎的環境準備,安裝jdk和tomcat。 在usr目錄下建立了文件夾java,又在java文件中創建

原创 Linux之shell基礎

Linux中有很多類型的shell,不同的shell具備不同的功能,shell還決定了腳本函數中的語法,linux默認的shell是/bin/bash,流行的shell還有ash、bash、ksh、ksh、zsh等,不同的shell都有自

原创 Linux之權限

在Linux中分爲讀權限,寫權限,執行權限三種。 讀權限: 對於文件夾來說,讀權限影響用戶是否能夠列出目錄結構。 對於文件來說,讀權限影響用戶是否可以查看文件內容。 寫權限: 對於文件夾來說,寫權限影響到用戶是否可以在文件夾下"創建/刪除