iT邦幫忙

鐵人檔案

2021 iThome 鐵人賽
回列表
Modern Web

Kotlin 怎麼操作資料庫?談談 Kotlin Exposed 框架 系列

談談 Kotlin Exposed 框架怎麼使用

鐵人鍊成 | 共 30 篇文章 | 20 人訂閱 訂閱系列文 RSS系列文 團隊Kotlin 愛台灣 2021
DAY 21

[Day 21] 測試的型態調整,談單元測試與整合測試

我們測試過了幾個案例,像是 測試更新標籤時如過濾Admin,結果應不出現Admin 和 測試更新標籤時如過濾Admin和Author,結果應不出現Admin和A...

2021-09-26 ‧ 由 ReccaChao 分享
DAY 22

[Day 22] 談 test double 的五種類型

昨天我們講了針對 removeTag() 的單元測試 不過,如果我們考慮到針對 updateUsersTags() 的單元測試,我們會發現到一個問題。就是,這個...

2021-09-27 ‧ 由 ReccaChao 分享
DAY 23

[Day 23] 撰寫我們的第一個 test double

回到我們的目標 我們希望能測試 updateUsersTags(),傳入參數 filter時,會執行到該參數。並成功的將該參數處理後的 tag 加到 user...

2021-09-28 ‧ 由 ReccaChao 分享
DAY 24

[Day 24] 新功能又來了!時間相關的測試!

這次,需求單位又提出了一個新的想法:我們可不可以設計一個 API,允許用戶在 2021/12/31 23:59:59 之前才能參加該活動。之後的用戶都不允許參...

2021-09-29 ‧ 由 ReccaChao 分享
DAY 25

[Day 25] 如果我們不想 mock Clock 怎麼辦呢?談依賴反轉

上次我們成功的撰寫好了 isValidDate(),並且利用 mockk 框架,來製作了一個假 Clock 固定測試時的時間。 不過,這段測試有沒有更簡單的實作...

2021-09-30 ‧ 由 ReccaChao 分享
DAY 26

[Day 26] review 一下我們的程式,談談 DSL 和 DAO 的差異

前面講了很多 Kotlin Exposed 框架使用的方式。 今天來講點觀念性的東西,談談 Exposed 框架內 DAO 和 DSL 的差異。 DAO 和 D...

2021-10-01 ‧ 由 ReccaChao 分享
DAY 27

[Day 27] 沒有 connection pool 支援怎麼辦?談 HikariCP

在資料庫連線中,如果連線數越來越多,在進行管理時常常會使用 connection pool 進行管理。 不過,在目前的 Kotlin Exposed 框架中,...

2021-10-02 ‧ 由 ReccaChao 分享
DAY 28

[Day 28] 建立 migration 時使用的套件,來談談 Flyway

昨天我們提到了建立 connection pool 時所使用的套件 HikariCP 今天,我們來談談建立資料庫遷移時使用的套件 Flyway 什麼是資料庫遷移...

2021-10-03 ‧ 由 ReccaChao 分享
DAY 29

[Day 29] 建立對外溝通的 API Server,談談 Ktor 框架

能夠存取資料庫了,有時我們可能會需要將資料庫的內容,以 API 的形式,傳輸給其他的開發者。 這時候,我們可以用到 Ktor 這個框架,來協助我們進行API S...

2021-10-04 ‧ 由 ReccaChao 分享
DAY 30

[Day 30] 最後一天了,來複習看看我們學了些什麼

今天是鐵人賽的最後一天了,我們花點時間來看看這三十天我們都介紹了些什麼。 首先,我們介紹了一下 Kotlin Exposed 是怎樣的一個框架(Day 1) 然...

2021-10-05 ‧ 由 ReccaChao 分享