美文网首页程序员写作JavaJavaEE 学习专题
《Springboot极简教程》Springboot使用Kotl

《Springboot极简教程》Springboot使用Kotl

作者: 光剑书架上的书 | 来源:发表于2017-03-29 16:51 被阅读211次

    配置

    要想实现Springboot使用Kotlin和Java混合编程,需要使用kotlin插件:

    spring-boot-gradle-plugin
    kotlin-gradle-plugin

    具体配置如下:

    apply {
        plugin "kotlin"
        plugin "kotlin-spring"
        plugin "kotlin-jpa"
        plugin "org.springframework.boot"
        plugin 'java'
        plugin 'eclipse'
        plugin 'idea'
        plugin 'war'
        plugin 'maven'
    }
    
    sourceSets {
        main {
            kotlin { srcDir "src/main/kotlin" }
            java { srcDir "src/main/java" }
        }
        test {
            kotlin { srcDir "src/test/kotlin" }
            java { srcDir "src/test/java" }
        }
    }
    
    
    buildscript {
        ext {
            kotlinVersion = '1.1.0'
            springBootVersion = '1.5.2.RELEASE'
        }
    
        dependencies {
            classpath "org.springframework.boot:spring-boot-gradle-plugin:$springBootVersion"
            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
            classpath "org.jetbrains.kotlin:kotlin-noarg:$kotlinVersion"
            classpath "org.jetbrains.kotlin:kotlin-allopen:$kotlinVersion"
        }
    
    }
    
    
    dependencies {
        compile("org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion")
        compile("org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion")
        compile("com.fasterxml.jackson.module:jackson-module-kotlin:2.8.4")
        ...
    
    }
    
    

    完整的配置参考:
    https://github.com/Jason-Chen-2017/restfeel/blob/master/build.gradle

    工程目录结构

    工程目录

    完整的工程目录,可以参考:

    https://github.com/Jason-Chen-2017/restfeel

    把工程git clone下来,命令行tree一下,即可看到。

    让kotlin代码的归kotlin目录,java代码归java目录

    比如说,我们把SpringBoot启动类放到kotlin下面:

    package com.restfeel
    
    import org.springframework.beans.factory.annotation.Autowired
    import org.springframework.boot.CommandLineRunner
    import org.springframework.boot.SpringApplication
    import org.springframework.core.env.Environment
    
    /**
     * Created by jack on 2017/3/29.
     * @author jack
     * @date 2017/03/29
     */
    @RestFeelBoot
    class RestFeelApplicationKotlin : CommandLineRunner {
        @Autowired
        private val env: Environment? = null
    
        override fun run(vararg args: String?) {
            println("RESTFEEL 启动完毕")
            println("应用地址:" + env?.getProperty("application.host-uri"))
        }
    }
    
    fun main(args: Array<String>) {
        SpringApplication.run(RestFeelApplicationKotlin::class.java, *args)
    }
    
    

    执行

    gradle bootRun
    

    系统会正常运行的。

    Java代码Kotlin代码互相调用

    我们放到后面单独的一章来讲。

    相关文章

      网友评论

        本文标题:《Springboot极简教程》Springboot使用Kotl

        本文链接:https://www.haomeiwen.com/subject/jqqyottx.html