摘要:二教程環境三創建項目創建項目有兩種方式一種是在官網上創建二是在上創建如圖所示勾選然后點,然后一直默認最后點擊完成即可。我們這里看到和普通的接口沒有異同,除了返回類型是用包裝之外。與之對應的還有,這個后面我們會講到。
從去年開始就開始學習kotlin了,但是一直沒有時間總結自己學習的東西,現在終于有點時間了,所將整理一套SpringBoot kotlin 的開發教程,希望能夠幫組更多想從Java轉Kotlin的朋友。一、Kotlin簡介
Kotlin是一門靜態語言,支持多種平臺,包括移動端、服務端以及瀏覽器端,此外,Kotlin還是一門融合了面向對象與函數式編程的語言,支持泛型、安全的空判斷,并且Kotlin與Java可以做到完全的交互。
二、教程環境JAVA "11.0.2"
maven 3.5.3
mongodb 4.0
springBoot 2.1.3
kotlin 1.3.21
三、創建項目創建項目有兩種方式:
一種是在Spring官網上創建https://start.spring.io/
二是在IDEA上創建如圖所示
勾選Reactive Web 然后點NEXT,然后一直默認最后點擊完成即可。
然后我們看到以下的項目結構
POM文件
四、HelloWord4.0.0 org.springframework.boot spring-boot-starter-parent 2.1.3.RELEASE io.intodream kotlin01 1.0.0 kotlin01 Demo project for Spring Boot 1.8 1.3.21 org.springframework.boot spring-boot-starter-webflux com.fasterxml.jackson.module jackson-module-kotlin org.jetbrains.kotlin kotlin-reflect org.jetbrains.kotlin kotlin-stdlib-jdk8 org.springframework.boot spring-boot-starter-test test io.projectreactor reactor-test test ${project.basedir}/src/main/kotlin ${project.basedir}/src/test/kotlin org.springframework.boot spring-boot-maven-plugin org.jetbrains.kotlin kotlin-maven-plugin -Xjsr305=strict spring org.jetbrains.kotlin kotlin-maven-allopen ${kotlin.version}
項目創建完后,我們看到了啟動類和我和熟悉的Java SpringBoot幾乎是一樣的,正如官方所說的完全兼容Java,所以我們就不用擔心了。
package io.intodream.kotlin01 import org.springframework.boot.autoconfigure.SpringBootApplication import org.springframework.boot.runApplication @SpringBootApplication class Kotlin01Application fun main(args: Array) { runApplication (*args) }
下面我們就來寫一個Hello World
@RequestMapping("/rest") @RestController class HelloController { @GetMapping("/hello") fun hello (): String { return "Hello World" } }
寫完后我們開始運行項目,看到控制臺輸入一下信息則說明運行完畢
2019-03-24 17:03:53.848 INFO 4342 --- [ main] o.s.b.web.embedded.netty.NettyWebServer : Netty started on port(s): 8080 2019-03-24 17:03:53.863 INFO 4342 --- [ main] i.i.kotlin01.Kotlin01ApplicationKt : Started Kotlin01ApplicationKt in 3.434 seconds (JVM running for 8.546)
打開瀏覽器輸入http://localhost:8080/rest/hello,我們會看到下面的信息,第一個SpringBoot Kotlin項目我們就寫好了。
我們在創建項目的時候選擇的是Reactive Web,而不是傳入Web,也就是說我們可以編寫響應式的Web程序,下面就編寫一個簡單的響應式接口。
@GetMapping("/mono") fun helloMono(): Mono{ return Mono.just("Hello Mono") }
我們這里看到和普通的接口沒有異同,除了返回類型是用Mono包裝之外。與之對應的還有Flux,這個后面我們會講到。
如果大家覺得文章有用麻煩點一下贊,有問題的地方歡迎大家指出來。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/77504.html
摘要:在很多服務中我經常需要用到發送郵件功能,所幸的是可以快速使用的框架,只要引入改框架我們可以快速的完成發送郵件功能。引入獲取郵件發送服務器配置在國內用的最多的就是郵件和網易郵件,這里會簡單講解獲取兩家服務商的發送郵件配置。 showImg(https://segmentfault.com/img/remote/1460000018819338?w=1024&h=500); 在很多服務中我...
摘要:一本節目標前兩章主要講了的基本操作,這一章我們將學習使用訪問,并通過完成簡單操作。這里有一個問題什么不選用數據庫呢答案是目前支持。突出點是,即非阻塞的。二構建項目及配置本章不在講解如何構建項目了,大家可以參考第一章。 showImg(https://segmentfault.com/img/remote/1460000018819338?w=1024&h=500); 一、本節目標 前兩...
摘要:一本節目標前兩章主要講了的基本操作,這一章我們將學習使用訪問,并通過完成簡單操作。這里有一個問題什么不選用數據庫呢答案是目前支持。突出點是,即非阻塞的。二構建項目及配置本章不在講解如何構建項目了,大家可以參考第一章。 showImg(https://segmentfault.com/img/remote/1460000018819338?w=1024&h=500); 一、本節目標 前兩...
摘要:下一代服務端開發下一代服務端開發第部門快速開始第章快速開始環境準備,,快速上手實現一個第章企業級服務開發從到語言的缺點發展歷程的缺點為什么是產生的背景解決了哪些問題為什么是的發展歷程容器的配置地獄是什么從到下一代企業級服務開發在移動開發領域 《 Kotlin + Spring Boot : 下一代 Java 服務端開發 》 Kotlin + Spring Boot : 下一代 Java...
摘要:上一章我們提到過與,對于具體的介紹沒說到,這一章我在這里簡單介紹一下,既然提到和,那肯定得提到什么是響應式編程,什么是。 showImg(https://segmentfault.com/img/remote/1460000018819338?w=1024&h=500); 上一章我們提到過Mono 與 Flux,對于具體的介紹沒說到,這一章我在這里簡單介紹一下,既然提到Mono和Flu...
閱讀 2662·2021-11-25 09:43
閱讀 2472·2021-09-22 15:29
閱讀 984·2021-09-22 15:17
閱讀 3628·2021-09-03 10:36
閱讀 2223·2019-08-30 13:54
閱讀 1740·2019-08-30 11:23
閱讀 1163·2019-08-29 16:58
閱讀 1290·2019-08-29 16:14