# Spring boot with Kotlin(1) - From zero to one ###### tags: `spring boot` `backend` `kotlin` ## 前言 * 本篇文章的筆者是開發 Android APP 有約 3 年經驗的 Android engineer * 透過本篇文章留下自己的踩坑記錄 * 希望有類似經驗、有軟體經驗的開發人員,可以透過本文章快速入門 * 筆者在學習時,有搭配 [ChatGPT](https://chat.openai.com/) 協助 ### IDE 選用 選擇 Android studio 的爸爸,也就是 Intellij IDEA,降低學習門檻 Intellij IDEA 分為 Ultimate 與 Community 兩種版本,前者只能免費 30 天,在筆者客家的狀況下選擇後者再搭配相關 plugin 本篇文章撰寫當下使用 `2023.2.1` 版本 ### 語言選用 當然選擇 Android 的主力開發語言,Kotlin 筆者對 Java 也熟悉,因此未來處理 Java 相關程式碼也不是問題 ### 框架選用 選擇 Spring boot 雖然 Kotlin 有 Ktor 可以用,不過目前還需要更多社群支持,且市場上相關職缺數量不多 在筆者對各類後端框架不熟悉的狀況下,先行學習主流框架除了可以降低不少開發成本外,先學會一種框架,對於未來接觸其他框架也會相對容易 ## Hello world with Spring Boot ### 載入基本專案 Intellij IDEA Ultimate 可以直接建立 Spring boot 專案,new > project 即可 Intellij IDEA Community 則推薦透過 [`https://start.spring.io/`](https://start.spring.io/) 取得基礎專案 * Project 管理工具選擇 `Gradle - Kotlin` (Groovy 也可以,看個人習慣) * Language 當然選擇 `Kotlin` * Sprint boot 版本我選擇預設推薦的 3.1.3,預設版本在未來可能會更動,根據當前狀況選擇即可 * Metadata 任意輸入 * 我記得某個開發標準中,package name 必須全部小寫,且不可用 - _ 等符號區分文字,因此相關文字我隨意輸入,先能 Hello world 再說 * Dependenices 需手動新增 `Spring Web` * 用來載入 Web controller,才能在對應路徑上載入功能 * 比如 `Hello World` :P  根據圖內設定後,點選 Genarate 下載設定好的專案,並透過 Intellij IDEA 開啟即可 開啟後,等待幾分鐘載入 dependencies ### 安裝相關 Plugin (Community 版) (Ultimate 版本可跳過本步驟) 網路上部分文章推薦安裝 `Spring Assistant` 來載入相關 Build 選項 可惜 `Spring Assistant` 已經停止維護,因此個人找到第三方維護版使用 https://zhuanlan.zhihu.com/p/602052378 https://github.com/ErickPang/intellij-spring-assistant/releases 本篇文章撰寫當下,有釋出相關版本給 `2023.2` 使用 在 IDE 中按下 settings,或透過 hotkeys `command + ,` 進入相關設定 搜尋 `Plugin`,並點選齒輪,再從硬碟載入剛才下載的第三方維護版  ### Build and Run 先上運作圖   進入 {project name}/src/main/kotlin/{your package name}/{your application file} 並直接在該檔案的 main() 下方放上以下程式碼 ```kotlin fun main() { // ... } @RestController class HomeController() { @GetMapping("/hello") // 建立 GET fun getHelloString(): String { return "Hello World!" } } ``` 遇到 IDE 透過紅字提示錯誤時,透過 option + enter (其他系統用 alt + enter) import 相關功能 接著,透過 Gradle 的 `Tasks/application/bootRun` 執行 Project (未來對測試有愛的話,選 bootTestRun 會跑測試) (Ultimate 版本直接點選綠色三角形即可) 使用任意瀏覽器,輸入 `http://localhost:8080/hello` 這樣就可以看到經典的 `Hello World!` 了  ## Reference * https://ithelp.ithome.com.tw/articles/10242205 * https://medium.com/@dorrgle/intellij-community-gradle-spring-boot%E9%96%8B%E7%99%BC%E7%92%B0%E5%A2%83%E8%A8%AD%E5%AE%9A-8bf9deb50f23 ## 結語 成功讓 Hello world 運作後,筆者就立即寫下此篇文章,感覺後續的路還有點長 🫠
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up