在上一篇文章使用 Kotlin 和Spring Boot 2.0快速开发REST API接口内介绍了如何使用简单代码快速实现REST API的服务端接口,此文简单介绍如何在以上基础上快速实现一个简单的客户端应用。
1. 工程目录初始化,参考使用 Kotlin 和Spring Boot 2.0快速开发REST API接口
2. 客户端主体代码
以下是使用Kotlin及Spring Boot2.0实现的访问REST API的客户端代码,结构清晰简单
bean{
WebClient.builder()
.baseUrl("http://localhost:8080/")
.build()
.get()
.uri("books")
.retrieve()
.bodyToFlux(Book::class.java)
.subscribe{println(it)}
}
因为获取到的服务端数据都是以Json格式展现,在客户端需要将Book实体类转化为原有的实体类,上述代码中bodyToFlux(Book::class.java)部分需要依赖我们从服务端复制过来的Book实体类,Book类的实体定义和服务端的Book类定义保持一致即可,类路径无需完全一致,bodyToFlux()方法会自动将JSON串自动转化为Book类对象传递到后续的步骤进行处理:
data class Book(val name: String, val author: String, val publish: Date)
3. 运行客户端程序
启动该客户端程序,获取服务端数据,打印结果参考下图: