Javalin 1.0.0 发布,Kotlin/Java 轻量级 Web 框架

栏目: 软件资讯 · 发布时间: 8年前

内容简介:Javalin 已发布 1.0.0 稳定版,该版本相比于之前的 0.5.X 并未有重大变化,可直接兼容升级。发行说明 Javalin 是用 Kotlin 和 Java 编写的一个非常轻量级的 Web 框架,受  Sparkjava 和 koa.js 的启发。 ...

Javalin 已发布 1.0.0 稳定版,该版本相比于之前的 0.5.X 并未有重大变化,可直接兼容升级。发行说明

Javalin 是用 Kotlin 和 Java 编写的一个非常轻量级的 Web 框架,受  Sparkjava 和 koa.js 的启发。

Javalin 基于 Kotlin 编写,其中一些功能接口采用 Java 开发,对 Kotlin 和 Java 的开发人员能提供几乎相同的愉悦体验。

Javalin 主要有以下特性:

  • 易用:不用提前学习任何概念就可以开始使用

  • 一致的API:所有的处理程序和映射器在Context (ctx)中都是无效的。

  • Kotlin和 Java 拥有几乎完全相同的API

  • 是框架也是库:无需扩展任何功能

  • 拥有完全可定制的嵌入式服务器(Jetty)

  • JSON对象映射

  • 通过AccessManager 接口简单的按端点验证

  • 简单的静态文件处理

  • 生命周期事件

  • CookieStore,一种简单的用来序列化的方法和存储在cookie中的对象。

  • 模板渲染

  • Markdown渲染

示例:

Hello World

kotlin

fun main(args: Array<String>) {
    val app = Javalin.start(7000)
    app.get("/") { ctx -> ctx.result("Hello World") }
}

Java

public static void main(String[] args) {
    Javalin app = Javalin.start(7000);
    app.get("/", ctx -> ctx.result("Hello World"));
}

API structure and server config

kotlin

val app = Javalin.create().apply {
    enableStaticFiles("/public")
    enableStandardRequestLogging()
    port(port)
}.start()

app.routes {
    path("users") {
        get(UserController::getAllUserIds)
        post(UserController::createUser)
        path(":user-id") {
            get(UserController::getUser)
            patch(UserController::updateUser)
            delete(UserController::deleteUser)
        }
    }
}

Java

Javalin app = Javalin.create()
    .enableStaticFiles("/public")
    .enableStandardRequestLogging()
    .port(port)
    .start();

app.routes(() -> {
    path("users"(() -> {
        get(UserController::getAllUserIds);
        post(UserController::createUser);
        path(":user-id"(() -> {
            get(UserController::getUser);
            patch(UserController::updateUser);
            delete(UserController::deleteUser);
        });
    });
});

【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上所述就是小编给大家介绍的《Javalin 1.0.0 发布,Kotlin/Java 轻量级 Web 框架》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大数据之路

大数据之路

阿里巴巴数据技术及产品部 / 电子工业出版社 / 2017-7-1 / CNY 79.00

在阿里巴巴集团内,数据人员面临的现实情况是:集团数据存储已经达到EB级别,部分单张表每天的数据记录数高达几千亿条;在2016年“双11购物狂欢节”的24小时中,支付金额达到了1207亿元人民币,支付峰值高达12万笔/秒,下单峰值达17.5万笔/秒,媒体直播大屏处理的总数据量高达百亿级别且所有数据都需要做到实时、准确地对外披露……巨大的信息量给数据采集、存储和计算都带来了极大的挑战。 《大数据......一起来看看 《大数据之路》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码