原创 SpringBoot 開發實踐(5):定時任務 @Scheduled

前言 在開發中,我們會有定時執行某些任務的需求,例如定時清理過期文件、定時發送郵件等等。SpringBoot 爲我們提供了便捷的方式來配置定時任務,只需要打上幾個註解即可。那麼下面讓我們來看看 SpringBoot 中如何開發定時

原创 學校官網沒有導師檢索功能怎麼辦?Python + BeautifulSoup 爬取導師信息自制檢索工具

1 背景 考研分數下來後,感覺成績不錯的就要開始聯繫目標院校的導師了。選擇導師要按照自己感興趣的研究生方向進行選擇,如果能按關鍵字檢索導師信息就會方便許多。我報考的是北京交通大學計算機學院,但官網中一欄 導師風采 並沒有檢索功能,

原创 SpringBoot 開發實踐(4):使用 @Controller 實現 RESTful Web 接口

前言 在之前的章節,我們已經用到了 Controller 的部分功能——外界通過 HTTP 請求,訪問 SpringBoot 中的方法。這就是我們熟知的 Web 接口,是客戶端與後端應用交互的重要方式之一。 那麼在本章,我們就來整

原创 SpringBoot 開發實踐(1):三分鐘入門搭建你的第一個 SpringBoot 工程

前言 從大四實習第一次接觸 SpringBoot 到現在,已經有 4 四年了。這期間,我也摸過一些其他的後端框架例如 JFinal 等,但回顧接觸過的項目,還是用 Spring 體系開發居多。 我上大四那會兒是 2016 年,那時

原创 SpringBoot 開發實踐(3):優雅使用 SpringBoot + Druid + MyBatis 訪問數據庫

前言 作爲 Java 後端開發,我們免不了要和數據庫打交道。那麼我們如何在 SpringBoot 中優雅地與數據庫交互呢? 目前,主流的方式是使用 JPA 或者 MyBatis 作爲訪問數據庫的框架。JPA 的前身是 Hibern

原创 SpringBoot 開發實踐(2):SpringBoot 必備小知識

本章會不斷總結更新一些有關 SpringBoot 的小知識,這類知識大都比較基礎,而且比較零碎,單獨拿出來作爲一篇博客顯得有些單薄,但是不寫的話可能會使很多新手對某些地方產生疑惑。所以就單獨開設本章,集中整理這些雜碎知識。 因爲本

原创 SpringBoot 對 controller 層捕獲全局異常並處理的方法(@ControllerAdvice 和 @ExceptionHandler)

引言 在開發中,我們會有如下的場景:某個接口中,存在一些業務異常。例如用戶輸入的參數校驗失敗、用戶名密碼不存在等。當觸發這些業務異常時,我們需要拋出這些自定義的業務異常,並對其進行處理。一般我們要把這些異常信息的狀態碼和異常描述,

原创 SpringBoot 全局異常處理進階:使用 @ControllerAdvice 對不同的 Controller 分別捕獲異常並處理

引言 之前發表過一篇 SpringBoot 對 controller 層捕獲全局異常並處理的方法(@ControllerAdvice 和 @ExceptionHandler),介紹瞭如何在 SpringBoot 工程中對 Cont

原创 在職非全日制計算機考研上岸心得分享

從考研備考那天開始,到收到了北京交通大學計算機學院的擬錄取通知,歷時 460 天。 在這一年多的備考日子裏,除了掌握了幾門考試科目的知識外,更多的是收穫了對有關學習、工作、人生問題的新的思考。考研的意義是什麼、如何平衡工作與學習、

原创 HttpClient Java 常用寫法總結

1. HttpClient 簡介 HttpClient 是Apache Jakarta Common 下的子項目,可以用來提供高效的、最新的、功能豐富的支持 HTTP 協議的客戶端編程工具包,並且它支持 HTTP 協議最新的版本和

原创 在 SpringBoot 2.x 中使用 @Transactional 對 Redis 事務管理

一.添加 Redis 基礎配置 spring: redis: host: 127.0.0.1 port: 6379 password: 二.開啓 Redis 事務配置 @Configuration @

原创 學校官網沒有導師檢索工具怎麼辦?Python + BeautifulSoup 爬取導師信息自制檢索工具

1 背景 考研分數下來後,感覺成績不錯的就要開始聯繫目標院校的導師了。選擇導師要按照自己感興趣的研究生方向進行選擇,如果能按關鍵字檢索導師信息就會方便許多。我報考的是北京交通大學計算機學院,但官網中一欄 導師風采 並沒有檢索功能,