需求是我在 GCP 用 Spring Boot 部署了一台 Cloud Run,同時也 Cloud Run 申請了一台 PostgreSQL,我希望能從這台 Cloud Run 使用 JDBC 連線到 Cloud SQL,原本認為應該很容易,意外的卻卡關有點久,整理了一下筆記,至少下次有同樣的需求時不會忘掉
GCP 如何在 Cloud Run 使用 Spring Boot 連線 Cloud SQL
· 5 分鐘閱讀
需求是我在 GCP 用 Spring Boot 部署了一台 Cloud Run,同時也 Cloud Run 申請了一台 PostgreSQL,我希望能從這台 Cloud Run 使用 JDBC 連線到 Cloud SQL,原本認為應該很容易,意外的卻卡關有點久,整理了一下筆記,至少下次有同樣的需求時不會忘掉
以往的習慣,都要建一個 SQL 的目錄,來記錄 table schema 做了什麼樣的修改,才能確認 schema 的版本,但如果共同開發的話,還是常有人會修改了卻忘了 commit 修改的內容造成 schema 的不一致
Flyway 提供管理 SQL 指令碼,在 Spring boot 啟動時自動執行預設路徑的 SQL 指令
Embedded DB 是很好用的工具,有時候為了一個小專案還要特別去 PostgreSQL 或 MySQL 建 database 會覺得殺雞焉用牛刀,如果只用文字檔處理又覺得不足,建個微型 DB 直接包在 Spring Boot 的專案中就很適合了
如何在 Spring Boot 中執行排程,很常用的功能,但老是記不起來,決定寫篇筆記做個範本,以後如果要用到的話,就可以直接抄,就可以直接使用範本快速產生需要的功能
一個前同事寫的舊案子,有個功能是產生檔案供使用者下載,案子跑了幾年都相安無事,而突然某筆資料一直是 exception,看 log 為產生檔案失敗,查了一下原因,發現是不合法的檔名,簡單將解法做個記錄筆記
雖然 JPA 很方便,但是寫了十幾年的 SQL,在遇到比較複雜的狀況還是習慣直接用 MyBatis 寫SQL搞定比較直覺,但是 MyBatis 有不少固定的 Mapping 生成文件,手動去寫還蠻煩人的,這時就需要 MyBatis Generator 了
為了要串接公司讀卡機的打卡資料,讀卡機存的資料是 MS 的 Access DB,測試了一下怎麼用 JAVA 的 Spring Boot 讀取 Access DB 資料,筆記如下