Java 從 1995 年發表至今已超過 30 年,switch 關鍵字歷經 Java 7 支援 String、Java 14 的 Switch Expressions 與 yield,到 Java 21 正式推出 Pattern Matching for switch,最新的 LTS 是 Java 25、最新版本是 Java 26,仍在預覽 Primitive Types in Patterns。本文整理歷代 switch 的進化。
從 Java 7、17、21、25 到 Java 26,Java Switch 關鍵字的演變
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
整合Spring Boot、Nginx反向代理、Linux Systemd系統服務
我常用的一個場景是一台Linux底下有多個Spring Application,可以透過Linux system daemon控制他們,然後使用Nginx的反向代理產生唯一對外窗口,讓外界透過Nginx與Spring Application溝通。
如何在程式中為52張撲克牌標上編號?還能知道每個編號是什麼花色與數字?
將一副撲克牌的每張牌編號為0到51號,第38號的牌是哪一張?這對許多高手來說很不難,但還是有同學詢問過,為了新手朋友寫了這篇教學。順便講解取餘數的好處,以及Magic Number是什麼。
Java EE(Jakarta EE)的Servlet/JSP的網址結構
Servlet與JSP是Java早期的網頁技術,由於許多方便的新技術、新框架崛起,現在通常不會直接使用Servlet。但其實Servlet還是留在Java中,就算是使用Spring MVC等框架,依然會見到一些蹤跡。此處介紹透過HttpServletRequest獲取當前網址的結構。
實測 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 的方式。