原创 BeanDefinitionStoreException: Failed to read candidate component class: URL [jar:file:/

今天處理一個歷史老項目的時候,我修改了一個類,出現了這樣的異常: [INFO]2020-05-28 15:27:48 [main] org.springframework.context.annotation.ClassPathScan

原创 自己動手寫 Java 虛擬機(二)-查找 Class 文件

相關文章: 自己動手寫 Java 虛擬機(一)-編寫命令行工具 我們都知道 Java 類加載有這麼幾個階段:加載、驗證、準備、解析和初始化。本文就是實現加載階段的查找 class 文件。《自己動手寫 Java 虛擬機》前兩章其

原创 關於 SQL 中 ON DUPLICATE KEY UPDATE 的使用

語法如下:INSERT INTO table1 (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c=c+1; 假設table1表中的主鍵或unique索引是a字段的話, 當執行上面sql時候

原创 Spring Boot 獲取啓動端口號

public class ConfSerivce implements ApplicationListener<WebServerInitializedEvent>{ @Override public void onApplic

原创 運行javac編譯報錯:僅當顯式請求註釋處理時才接受類名稱“xxxxxx”

發生原因:運行javac編譯時沒有加上擴展名。 解決方法:加上.java擴展名重新編譯即可,"xxxxxx.java"。

原创 org.springframework.web.client.HttpClientErrorException$UnprocessableEntity: 422 UNPROCESSABLE EN

今天在使用 RestTemplate 的時候出現了這個異常: [2020-06-10 19:35:10] [kbs_dev] [ERROR] [main] com.mi.info.kbs.service.midun.MidunSup

原创 對一段代碼的性能分析

先看這麼一段代碼: /** * @author Dongguabai * @Description * @Date 創建於 2020-06-02 23:27 */ public class ArrayTest {

原创 從 Java 程序優雅停機到 Linux 信號機制初窺

前不久,公司內部使用的一個 RPC 框架支持了優雅停機。優雅停機是很多框架非常重要的特徵,在 Java 中是使用 Runtime.addShutdownHook 方法去註冊關閉的鉤子(Runtime 類代表了當前 JVM 進程的運

原创 JVM安全退出(如何優雅的關閉java服務)

上線!重啓!你還在爲丟失任務而煩惱麼?看這裏看這裏,從此不再丟任務,JVM可以安全退出的 在交易流程中,爲了提升服務的性能,我們做了一些異步化的優化,比如更新用戶最近使用的收貨地址、提單完成後通過MQ去發送各種通知類消息、清理用戶的購物車

原创 Dubbo 源碼構建

代碼簽出 通過以下命令可以簽出最新的項目源碼 git clone https://github.com/apache/dubbo.git dubbo 也可以在也可以直接在 https://github.com/apache/dubb

原创 關於 Spring 中的 FactoryBean

一般我們會使用如 XML、@Bean、@Componet 等方式去註冊,但是如果在 Bean 的實例化過程非常複雜,如有很多邏輯處理、層層依賴、複雜依賴等,這在第三方整合的時候尤爲重要。FactoryBean 是 Spring 提

原创 Socket 基礎之超時時間

平時經常會聽到“連接超時”、“Socket 超時”,那麼到底是什麼超時呢。以我們目前內部使用的調度任務爲例,有時候會收到這樣的調度異常郵件: 在 xxxx,Exception to request execution plan:j

原创 Linux 中 dig 命令返回結果解釋

dig  baidu.com 返回 下面說明各項意義: ; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5_8.6 <<>> baidu.com ;; global options:  printcm

原创 關於IDEA 報Error:java:無效的源發行版13

很多相關的編譯異常都可以按照這個方法處理。 -------------------------------------------------------- 首先打開自己的項目,點擊File–>Settings進入界面找到如圖位置 並將相

原创 MySQL 創建表的時候,添加字段註釋

#創建表的時候寫註釋 CREATE TABLE userinfo( id INT COMMENT '編號', uname VARCHAR(40) COMMENT '用戶名', address VARCHAR(120) COMMEN