身為只會寫Android Code的我,今天聽了講者說了好多沒聽過的後端名詞,先筆記下來,邊聽邊學ing…。
名詞介紹
是說學Spring Framework要先去了解IOC,DI,AOP這些名詞,聽了先是問號滿天飛;再來說了個重點是想要了解Spring的精隨跟深奧之處,還是得回頭講Spring Java的部分。途中好像有講到一些專案設定,據說是發展到後面Spring 決定是要做一些簡化,才會開始有Spring Boot這些東西開始發展出來。而Spring將Kotlin簡潔的特性整合進來,也開始支援Kotlin開發了。
相關名詞介紹連結整理:(都從講者提供的連結拿來的…)
Spring Framework: https://spring.io/projects/spring-framework
Spring: https://spring.io/
Spring Boot: https://spring.io/projects/spring-boot
Spring with Kotlin: https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/languages.html#kotlin
這些可以有空慢慢惡補起來,練功場的重點除了知道這些背景知識外,還是需要實作相輔相成,讓人可以實際感受到程式跑起來的感覺。
建立專案
我們先要安裝開發的IDE,有分直接用IntelliJ Community版本跟Ultimate版本,最大的差異就是有付錢的當然能享有更多便利囉,你從建新專案就能區別,Ulitmate版本直接有內建Spring Initiailzr,在IDE內就能直接選取想要的設定產生專案,輕鬆快速立即就能開始寫Code了。
而沒有付錢的Community的人怎麼辦? 沒關係,勤奮點,徒手去點選網頁版的 Spring Initiailzr https://start.spring.io/
按下檔案GENTERATE會下載專案檔案,用IntelliJ開啟一樣能寫Code編譯執行,不過講者是說可能用徒手下載這方法可能還是會少一些設定,需要再手動加入,或是有些指令,你用Community 版本沒有內建,對Terminal沒那麼熟悉的人,初學者可能光是在這些環境設定就已經耗費很多時間了。
實作
在src下建立一個新的檔案,命名為HelloController.kt
package example.demoimport org.springframework.web.bind.annotation.GetMappingimport org.springframework.web.bind.annotation.RestController
@RestController
class HelloController{ @GetMapping("/hello")
fun sayHello() = "Hello Spring Boot Kotlin!"}
@RestController: 表示結合了@ResponseBody+ @Controller
@ResponseBody:表示將return type會寫入response body
@Controller: 表示了Spring controller類別
@GetMapping: 就表示了HTTP GET REQUEST
這些annotation可能直接看文件解釋比較清楚,有興趣的去Spring官方查閱:
最後程式的編譯執行,如果你是Ultimate版本,在靠右的工具列上有DemoApplication旁邊就有個執行箭頭(Run “DemoApplication”),按下去就行了!
那Community版本的夥伴們,就是要找到右邊的Gradle大象,找到bootRun按下去,也能達到一樣的結果喔!
兩個版本都可以到IDE底下切去看Build的過程,最後看到BUILD SUCCESFUL就是成功了。
畫面其實會自動切到Run的畫面,你也能看到Tomcat service被啟動,而我們寫的DemoApplication也執行起來了。
到你的瀏覽器輸入http://localhost:8080/hello 就出現在HelloController輸入的Hello Spring Boot Kotlin
以上就是練功場的第一堂體驗,教你用Spring Boot來實現Hello World!
歡迎各位也一起來練功場學習Spring囉!
2020–08–2~2020–09–27相約在線上! 隔週一起來練功!