需求是我在 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 了