OracleJDK、OpenJDK之外的Java JDK JRE JVM環境選擇

想下載 Java 開發環境卻被 OracleJDK、OpenJDK、Eclipse Temurin、Amazon Corretto、Azul Zulu 等選項搞混?本文整理 Oracle 從 Java 8 到 Java 25 的授權變化,包含 2023 年改按員工數計價的重大變動,並介紹 Eclipse Temurin、Amazon Corretto、Azul Zulu、Microsoft、IBM Semeru、Oracle GraalVM、BellSoft Liberica 等主流發行版特色與適用情境。

Java工程師的Swift學習筆記-上篇

Swift將許多功能直接加入語言本身,成為語言的一部分,像是Optional直接用問號就可以宣告,List、Map直接用中括號設值、取值,方便度也是更上一層樓。本篇文章提供給熟悉Java語言的人,以Java語言的角度來介紹Swift語言,為已經有程式語言基礎的人提供更快速了解Swift的介紹。

實測 Spring Boot 中多個 Properties 設定的覆蓋順序

Spring Boot 同一個設定值可以從啟動參數、環境變數、System Property、application.properties、application-{profile}.properties 等多個來源讀取。本文整理常見來源的優先順序,從最高的命令列參數到最低的預設 properties,以及 OS 環境變數、SPRING_APPLICATION_JSON、jar 外與 jar 內檔案差異等容易踩坑的細節,幫助開發者搞清楚到底是哪個值生效。

指定 Spring Boot 執行環境的多種方式

Spring Boot 專案在開發、測試、正式環境通常需要不同的設定值,這篇文章整理 application-{profile}.properties 命名規則、SPRING_PROFILES_ACTIVE 環境變數、spring.config.location 與 additional-location 差別,以及 Spring Boot 2.4 之後新增的 spring.config.import、profile groups、multi-document files 等多種指定 profile 的方式。