Ktor에서 Hello World!

11133 단어 IntelliJKtorKotlin

소개



이번은, 인기 급상승 중인 언어 Kotlin의 웹 프레임워크 「Ktor」로 "Hello World"해 나갑니다. 「케이터」라고 읽는 것 같습니다. (도중까지 코터는 읽을까 생각했어요. 웃음)

Ktor의 특징



Easy to use, fun and asynchronous.
  • 간단
  • 재미 (여기 중요)
  • 비동기

  • 환경




    종류
    이름
    버전


    OS
    macOS Mojave
    10.14.6

    개발 환경
    IntelliJ IDEA
    Ultimate 2019.2.3

    개발 언어
    Kotlin
    1.3.50

    종속 라이브러리
    Ktor
    1.2.4


    IntelliJ IDEA 설정



    Jetbrain의 IDE를 이용한 적이 없는 분을 위해서 설정에 대해서도 기술해 둡니다.

    맞춤형



    특별히 고집하지 않으면 「Skip Remaining and Set Default」를 클릭
    (UI Themes는 Darcula가 눈에 띄게 추천합니다 웃음)


    라이센스



    라이센스 구입하지 않은 분은 30일간의 무료 기간이 있으므로 「Evaluate for free」를 선택하고 「Evaluate」를 클릭


    플러그인



    "Configure"에서 "Plugins"를 클릭


    "Marketplace"탭에서 "Ktor"를 검색하고 "install"하고 "Restart IDE"로 재부팅


    Ktor 프로젝트 만들기



    "Create New Project"를 클릭


    Ktor 탭을 선택하고 Next를 클릭


    GroupId, ArtifactId, Version을 입력하고 Next를 클릭합니다.


    Project name, Project location을 입력하고 Finish를 클릭하십시오.


    "Automatically import this project on changes in build script file"에 체크하고 "OK"를 클릭


    프로젝트 작성 완료!


    Hello World



    Hello World를 표시하겠습니다!

    Plain Text



    원시 텍스트를 브라우저에서 표시합니다.

    src/Application.kt
    // 自分のパッケージ名
    package com.example.helloworld
    
    import io.ktor.application.*
    import io.ktor.response.*
    import io.ktor.request.*
    import io.ktor.routing.get
    import io.ktor.routing.routing
    
    fun main(args: Array<String>): Unit = io.ktor.server.netty.EngineMain.main(args)
    
    @Suppress("unused") // Referenced in application.conf
    @kotlin.jvm.JvmOverloads
    fun Application.module(testing: Boolean = false) {
    
        routing {
            get("/") {
                call.respondText { "Hello World" }
            }
        }
    }
    

    main 메소드의 좌측에 있는 실행 버튼을 클릭해 「Run'~'」를 클릭


     하면 아래에 htp://0.0.0.0:8080


    Hello World !!


    HTML & CSS



    일반적인 개발에서는 원시 텍스트가 아닌 HTML과 CSS를 조합하여 표시하는군요.

    resources/hello_world.html
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Hello World</title>
        <link rel="stylesheet" type="text/css" href="/hello_world.css">
    </head>
    <body>
    
    <h1>
        Hello World
    </h1>
    
    </body>
    </html>
    

    resources/hello_world.css
    h1 {
        color:red;
    }
    

    src/Application.kt
    // 自分のパッケージ名
    package com.example.helloworld
    
    import io.ktor.application.*
    import io.ktor.http.content.default
    import io.ktor.http.content.file
    import io.ktor.http.content.static
    import io.ktor.routing.routing
    
    fun main(args: Array<String>): Unit = io.ktor.server.netty.EngineMain.main(args)
    
    @Suppress("unused") // Referenced in application.conf
    @kotlin.jvm.JvmOverloads
    fun Application.module(testing: Boolean = false) {
    
        routing {
            static("/") {
                file("hello_world.css", "./resources/hello_world.css")
                default("resources/hello_world.html")
            }
        }
    }
    

    마찬가지로, main 메소드의 왼쪽에있는 실행 버튼을 클릭하고 "Run'~"를 클릭 한 다음 htp://0.0.0.0:8080을 클릭하여 브라우저를 시작하십시오.


    기타



    HTML DSL 라고 하는 동적으로 HTML 를 생성하는 방법도 있으므로, 꼭 시험해도

    마지막으로



    어떻습니까? 조금이라도 Kotlin, Ktor 좋다고 생각해 주셨으면 기쁩니다(^ω^)
    꼭 Kotlin, Ktor 에서 개발해 보세요!

    마지막까지 시청 해 주셔서 감사합니다.

    좋은 웹페이지 즐겨찾기