这篇文章给大家介绍如何使用弹簧引导与芬兰湾的科特林进行联合开发,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
春官方最近宣布,将在Spring框架5.0版本中正式支持芬兰湾的科特林语言。这意味着春天启动2. x版本将为芬兰湾的科特林提供一流的支持。
这并不会令人意外,因为关键的团队以广泛接纳,# 8203;及# 8203;JVM语言(如Scala和Groovy)而闻名。下面我们用弹簧引导2。x和芬兰湾的科特林应用程序。
<强> 1,环境强>
IntelliJ和Eclipse都对芬兰湾的科特林提供了支持,可以根据自己的喜好搭建芬兰湾的科特林开发环境。
<强> 2,构建应用强>
首先创建一个弹簧引导2项目,然后修改POM配置,让项目保护指定的Java版本和芬兰湾的科特林版本。依赖关系如下:
& lt; dependency> & lt; groupId> org.jetbrains.kotlin & lt; artifactId> kotlin-stdlib-jre8 & lt; version> 1.1.2 & lt;/dependency> & lt; dependency> & lt; groupId> org.jetbrains.kotlin & lt; artifactId> kotlin-reflect & lt; version> 1.1.2 & lt;/dependency> & lt; dependency> & lt; groupId> com.fasterxml.jackson.module & lt; artifactId> jackson-module-kotlin & lt; version> 1.1.2 & lt;/dependency>
注意,我们正在为芬兰湾的科特林源码文件和测试文件指定文件位置:
& lt; sourceDirectory> $ {project.basedir}/src/main/kotlin & lt; testSourceDirectory> $ {project.basedir}/src/测试/kotlin
要编译芬兰湾的科特林模块和源码,需要使用kotlin-maven-plugin插件:
& lt; plugin> & lt; artifactId> kotlin-maven-plugin & lt; groupId> org.jetbrains.kotlin & lt; version> 1.1.2 & lt; configuration> & lt; compilerPlugins> & lt; plugin> spring & lt;/compilerPlugins> & lt; jvmTarget> 1.8 & lt;/jvmTarget> & lt;/configuration> & lt; executions> & lt; execution> & lt; id> compile & lt; phase> compile & lt; goals> & lt; goal> compile & lt;/goals> & lt;/execution> & lt; execution> & lt; id> test-compile & lt; phase> test-compile & lt; goals> & lt; goal> test-compile & lt;/goals> & lt;/execution> & lt;/executions> & lt; dependencies> & lt; dependency> & lt; groupId> org.jetbrains.kotlin & lt; artifactId> kotlin-maven-allopen & lt; version> 1.1.2 & lt;/dependency> & lt;/dependencies> & lt;/plugin>
到此为止,构建芬兰湾的科特林应用程序所需的一切就搭建好了。注意,可以去Maven中央仓库寻找以下组件的最新版本:spring-boot-starter-web, kotlin-stdlib-jre8, kotlin-reflect, jackson-module-kotlin, spring-boot-starter-test。
下面设置应用程序的上下文。
下面进入芬兰湾的科特林的代码,编写熟悉的弹簧引导应用程序上下文:
@SpringBootApplication 类KotlinDemoApplication 有趣的主要(args: Array可以看到熟悉的@SpringBootApplication注解。
我们有一个类定义了KotlinDemoApplication类。在芬兰湾的科特林中,类的默认范围是公共的,所以可以省略。另外,如果一个类没有变量,没有函数,它可以被声明为没有大括号,所以,从本质上讲,我们只是定义了一个类。
另外,方法或函数默认是公开的,所以不必在这里声明。另外,不返回任何内容的函数不需要指定一个空返回类型。
最后,在一个类的外部定义的任何函数都是自动静态的。这使得这些函数可以在启动时得到执行。
现在让我们从根目录运行我们的应用程序,使用mvn spring-boot:运行。应用程序得以启动,应该可以看到应用程序在端口8080上运行。
接下来,构建一个控制器。
现在添加一个控制器到服务中:
@RestController 类HelloController { @GetMapping (“/hello") {乐趣helloKotlin():字符串 返回“你好world" } }与标准的弹簧控制器没有太大的不同,但是肯定代码量更精简。我们为此控制器添加一个测试类和案例来验证我们的工作:
如何使用弹簧引导与芬兰湾的科特林进行联合开发