Java 17新增的sealed、non-sealed class與final class差別

一個Java Class的可用性有四種狀態,分別是public、protected、(無標示)、private,但可否被繼承的設定卻只有無標示與final兩種。從Java 17開正式推出sealed class / interface,有些人將sealed翻譯為彌封類別,或是密封類。sealed是用來限制類別繼承與介面實作做的對象,解決「都可以繼承,要不就是都不能繼承的問題。

使用Spring Data JPA建立公版的DAO、Repository樣板

Spring Data JPA是一個非常方便的資料庫Connection與Mapping的框架,它可以幫你建立資料表、添加資料表的欄位、維護連接池、將Java物件轉換為Table資料。有時候我們會希望自己建立一個我們的公版interface,讓他繼承某一個Repository再添加一些方法,然後之後的DAO interface再繼承我們的公版interface,可以簡化更多程式碼。

使用Java與JavaScript檢查密碼強度

跟帳號有關的系統,不管是網頁、手機App、或是單機桌面應用程式都可能遇上密碼,有些簡單點的會限制使用者的密碼文字長度要多長,複雜一點的還會限制密碼至少要包含某些內容,已達到足夠的複雜強度。本文提供Java、JavaScript與TypeScript的範例,提供檢測密碼是否符合強度的程式碼。

從Java 7、17到Java 20,歷代Java Switch關鍵字的進化

Java語言從1995年發表至今2022年已經27個年頭,有些舊專案可能還停留在Java 6,比較近代一點的也可能停留在Java 8或Java 11這兩個LTS版。這些年間光是switch關鍵字的功能就進化許多次,像是加入的了Switch陳述句(Switch Expressions)、箭頭回傳值、多重數值的case(Multi-Constant Case)、新的關鍵字yield等,本文將介紹switch多了哪些方便好用的新功能。

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

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

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

Spring Framework是Java中的好框架,Spring Boot又讓方便度更上一層樓,只需要簡單的一點設定就可以開始使用。但同一個專案在不同環境有不同的變數與設定值。因此可以建立多個設定檔,常見的會有開發版本、測試版本、生產版本等,在此介紹指定環境的幾種方式。